javascript – 我们可以使用和运算符来组合多个jQuery事件

前端之家收集整理的这篇文章主要介绍了javascript – 我们可以使用和运算符来组合多个jQuery事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使用jQuery查看三个文本框是否被更改,以便我可以通过 AJAX发送数据.

我试过一个简单的脚本:

$("#name,#position,#salary").change(function()
{
     console.log("All data are changed");
});

姓名,职位和工资是三个文本框的相应ID.

结果是当我改变第一个:

当我改变第二个:

这里是第三个:

所以,当单独的文本框被更改时,我有消息.我所需要的是当三个更改时,显示消息.我是jQuery的新手,所以我想知道我是否可以在jQuery中使用像IF … AND … AND这样的东西.

解决方法

一旦用户更改了值,许多验证框架就有一个脏输入的概念.您可以实现这一点,并检查所有字段是否脏.
$("#name,#salary").change(function() {
  this.classList.add("dirty");
  if ($(".dirty").length === 3) {
    console.log("All data are changed");
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="name" />
<input id="position" />
<input id="salary" />

我们可以将其抽象为一个jQuery插件,以便重新使用

$.fn.allChange = function(callback) {
  var $elements = this;
  $elements.change(function() {
    this.classList.add("dirty");
    if (callback && $elements.filter(".dirty").length === $elements.length) {
      callback.call($elements);
    }
  });
  return $elements;
}

$("#name,#salary").allChange(function() {
  console.log("All data are changed");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="name" />
<input id="position" />
<input id="salary" />
原文链接:https://www.f2er.com/jquery/151243.html

猜你在找的jQuery相关文章