javascript - jQuery SerializeArray 和 Not 选择器

标签 javascript jquery serializearray

我正在使用 .serializeArray 函数来收集表单的所有输入,但我想排除某个 div 类中的输入。我认为 .not() 选择器会执行此操作,但它似乎不起作用。

在最基本的层面上,这是我的代码:

HTML:

<form class="theForm">
  <input name="a" value="a"/>
  <div class="excludeMe">
    <input name="c" value="c"/>
  </div>
</form>

Javascript:

$.each($(".theForm").not(".excludeMe").serializeArray(), 
function() {
    alert(this.name);
});

我希望警报只是“a”,但这是警报“a”,然后是“b”。

fiddle :https://jsfiddle.net/cysaczu5/

最佳答案

您必须将所有输入包装在 <div><input/></div>

然后将选择器更改为这个 $.each($(".theForm :not(.excludeMe) input")

https://jsfiddle.net/cysaczu5/3/

我建议删除 div 并将“excludeMe”类直接添加到输入中。那么选择器就变成$.each($(".theForm input:not(.excludeMe)")

关于javascript - jQuery SerializeArray 和 Not 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36769681/

相关文章:

javascript - 将字符串转换为有效的 json 对象

javascript - 当使用 $compile 以编程方式创建指令时,如何调用链接函数?

javascript - 如何使用索引动态更新javascript中的数组?

javascript - 关闭弹出窗口时可以刷新父窗口吗?

jquery - 在 JavaScript 中等待或休眠

jQuery SerializeArray() JSON 字符串

javascript - 在运行剩余的 javascript 之前检查有效的电子邮件

javascript - 学习用于数据可视化的 d3.js

javascript - 减慢 JavaScript。漏洞。 jQuery.is (":visible")