我想弄清楚最好的做法是做些什么。
if
语句中是否包含if
语句是件坏事。 另外我无法弄清楚为什么我的isNumeric
无效,我有一个非常简单
带有几个输入框的表格,我正在我的周围环绕它们
jQuery的。发生的事情是我可以输入一串字母> 5,它不会
点击isNumeric
条件。理想情况下,用户必须为此输入数字。
有什么想法吗?
$("form :input").each(function(){
if(this.id = "zipCode" && $(this).val().length < 5 && $(this).is(":visible")){
if($.isNumeric($(this).val())){
//do something
}
}
});
答案 0 :(得分:1)
您将错误的参数传递给isNumeric
函数。这一行
if($.isNumeric($(this.val())){
应该是
if($.isNumeric($(this).val())){
对于长条件列表,您可以将它们重构为一个具有反映其用途的名称的单独函数。例如,在这种情况下,您可以创建如下函数:
function isValidZipcode(field) {
return field.id = "zipCode" &&
$(field).val().length < 5 &&
$(field).is(":visible");
}
然后它看起来更干净:
if(isValidZipcode(this)){
if($.isNumeric($(this).val())){
//do something
}
}