javascript - 如何使用 jQuery 动态获取输入值?

标签 javascript jquery html

我正在尝试实现 DRY我的编程风格中的原则。

为了避免大家对我上面的问题产生误解,我在下面再解释一次。我一直在寻找这个解决方案,但似乎找不到合适的解决方案。

我想动态获取表单中的每个输入值(不是动态输入,动态添加新输入等),而无需一遍又一遍地输入:

var foo = $('input[name="foo"]').val();
var bar = $('input[name="bar"]').val();

一两 block 就可以了。但问题是当我有超过 10 个输入时,这将是 Not Acceptable 。

我该怎么做?

最佳答案

您可以使用 each 函数在具有 name 属性的 input 上循环并获取该值。

var arr = [];
$(":input[name]").each(function(index, element) {
  arr.push($(this).val());
});
console.log(arr);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type='text' name='foo' value='1' />
<input type='text' name='bar' value='2' />
<input type='text' name='foo' value='3' />
<input type='text' name='bar' value='4' />
<input type='text' name='foo' value='5' />
<input type='text' name='bar' value='6' />
<input type='text' value='7' />

关于javascript - 如何使用 jQuery 动态获取输入值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53773007/

相关文章:

javascript - Angularjs +指令文件html内容点击事件在js文件中不起作用

jQuery serialize() 不适用于 IE 中的 Ajax 加载对话

javascript - 除了 $ 和 jQuery 之外,是否使用 jQuery 在原始上下文中添加了其他内容?

html - 悬停时如何将所有元素保持在顶部

javascript - jquery 按 id 元素排序(IE bug)

javascript - 如何在不触发缓慢重绘的情况下在网页上移动 SVG?

javascript - PHP 多维数组到 JavaScript

javascript - 从 GridView ASP.net 模板字段内的上传控件触发 JavaScript

html - 带有换行文本的 flexbox 元素之间的间距相等

javascript - 如何使用 jquery ui 在表体 td 中进行可拖动和可排序