我有两个表单字段,并且希望仅在两者都有值时才使用 jquery 发布这些值。我已经尝试过了,但必须有更好的方法。我认为这种方式可能会导致错误
$('#RFID').change(function(e){
if($(this).val() != '' && $('#STATION_ID').val() != ''){
}
});
我有两个表单字段,并且希望仅在两者都有值时才使用 jquery 发布这些值。我已经尝试过了,但必须有更好的方法。我认为这种方式可能会导致错误
$('#RFID').change(function(e){
if($(this).val() != '' && $('#STATION_ID').val() != ''){
}
});
这不是一个特别糟糕的方法。不过可以稍微清理一下。我会用这样的东西:
var $fields = $('#RFID, #STATION_ID').change(function(e) {
if ($fields[0].val() && $fields[1].val()) {
// post it
}
});
$('form').submit(function(e) {
if (!$fields[0].val() || !$fields[1].val()) e.preventDefault();
});
您可以在发布帖子之前简单地进行相同的检查:
if ($.trim($('#RFID').val()) != '' && $.trim($('#STATION_ID').val()) != '') {
// do post
}
可能会在所有可以生成表单自动提交的字段中分配一个更改处理程序。
也许为每个可以参与自动提交的字段添加一个类。
我知道的代码不多,但设置了意图并在一个地方收集了验证。
希望能帮助到你。
$('.auto-submit').change(function(e) {
// collect all the auto submit fields and make sure they are not empty
for( field in $('.auto-submit') )
if( field.val() == '' ) return; // all fields not there
}
// do form submit here
} );