javascript - 等待 jquery 中两个值发生变化

标签 javascript jquery

我有两个表单字段,并且希望仅当两个表单字段都有值时才使用 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();
});

关于javascript - 等待 jquery 中两个值发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10535307/

相关文章:

javascript - <embed> javascript代码的最佳做法

javascript - 在渲染页面之前加载javascript?

jquery - 单击 jquery 的元素数组

javascript - jQuery 插件初始化函数未执行

javascript - 如何使用 jQuery 或 javascript 保留 cookie 而不更改浏览器设置?

javascript - 根据 react 中的状态和 Prop 更改图像源的语法

javascript - top.document 是跨浏览器的吗?

javascript - 使用 React 和 redux 从不同的 reducer 调用操作

javascript - 使用 jQuery 在单击按钮上传递值

javascript - jQuery 移动 : automatically adding scrollbar if options list is too long