2015-10-07 52 views
0

我正在验证支持多种语言的应用程序中的输入字段。 我已经绑定了输入事件来调用将全角字符转换为半角字符(用于中文)的函数,还有另一个函数用于检查输入字段中数字的有效范围。 代码全宽为半角转换:Jquery验证使用绑定不工作

$('.half_width').bind("input",function() { 
    $(this).val($(this).val().replace(/[\uff01-\uff5e]/g, function(ch){ return String.fromCharCode(ch.charCodeAt(0) - 0xfee0); })); 
     }); 

代码,用于验证的范围内,其中整数须由

$('#input_box').bind('input', function (event) { 
     var number = $(this).val(); 
     var retval = ValidateifDigit(number,event,4); 
     return retval; 
    }); 

    $('#input_box').bind('input', function (event) { 
     var number = $(this).val(); 
     var obj = new Object(); 
     obj.integerDigits = 3; 
     obj.lowerLimit = 8; 
     obj.upperLimit = 960; 
     alert("ma"); 
     var retval = self.validateNumber (obj, number); 
     if(retval==false){ 
      $('#parent_div').css('visibility', 'visible'); 
      $('#input_box').parent().addClass('error'); 
     } else{ 
      $('#parent_div').css('visibility', 'hidden'); 
      $('#input_box').parent().removeClass('error'); 
     } 
     viewModel.exposureInput().tubeCurrent(number); 
     return retval; 
    }); 

当试图输入数字代码不工作同样没有验证。请帮助

回答

0

您是否尝试将您的代码更改为此?

$('#input_box').bind('change' 
... 

如果我认为你的input_box是一个文本输入,你应该能够通过检查事件“change”来检测其内容的变化。

+0

是的......我试过......我也试过按键事件,但它根本不起作用......即使断点和警报没有发生在调试器上 – user3595524

+0

@ user3595524如果用“on”替换bind,该怎么办? – nowhere

+0

从jQuery 1.7开始,.on()方法是将事件处理程序附加到文档的首选方法。 – nowhere