如果第一个数字为零,则不允许用户输入更多值

时间:2016-11-23 11:05:07

标签: javascript php

我正在使用java脚本在我的前端进行一些自定义验证我想要实现的是,如果用户输入除零以外的任何数字,它应该继续他在病房后输入但是如果用户已输入零作为第一个数字,它不应该允许用户输入任何值!!只是0没有别的 在许多网站上有一个功能,我看到如果他们在输入字段中有不需要的字符,他们只是动态地退格!喜欢卡号码领域的许多支付处理网站!所以在我的情况下,如果第一个数字为零,我将退格后的所有内容,如果不是零,那么什么都不做让它处理......我正在寻找的东西  这是我正在处理的初始代码

<?php $numbers_var='REAR_PRICE_'.str_replace(" ","_",$buttonloop[$i]);?>
<input onkeyup="checknumbers('<?php echo $numbers_var?>')" onkeypress='return event.charCode >= 48 && event.charCode <= 57' name="REAR_PRICE_<?php echo str_replace(" ","_",$buttonloop[$i]);?>"style="color: black;width: 100%;" value="<?=$rear?>" type="input"/>

这里是javascript

function checknumbers(i){
    if($("input[name="+i+"]").val()=='0'){
        //what to do?
    }
 }

3 个答案:

答案 0 :(得分:2)

您可以在按键事件中完成所有操作

&#13;
&#13;
function checknumbers(event) {
  if(event.target.value === '0' || !(event.charCode >= 48 && event.charCode <= 57)) {
    event.preventDefault()
    return false
  }
}
&#13;
<input 
  type="input"
  onkeypress='checknumbers(event)' 
  name="REAR_PRICE_1"
  style="color: black;width: 100%;"
  value=""
/>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

试试这个..

 function checknumbers(i){
       var input = $("input[name="+i+"]").val();
       if(input == "0"){
          return false;
        }

    }

答案 2 :(得分:1)

将其设为只读

void CreatePacket(const std::string& source, 
                  const std::string& id, 
                  const std::string& payload, 
                  std::vector<char>& buffer)
{
    buffer.clear();
    buffer.reserve(source.size() + id.size() + payload.size() + 1);

    buffer.push_back('$');

    buffer.insert(buffer.end(), source.begin(),  source.end() );
    buffer.insert(buffer.end(), id.begin(),      id.end()     );
    buffer.insert(buffer.end(), payload.begin(), payload.end());
}