【问题标题】:form input element arrays with mootools使用 mootools 形成输入元素数组
【发布时间】:2014-11-19 00:41:24
【问题描述】:
我尝试搜索此问题的答案,但没有找到我正在寻找的具体答案。在 mootools 中,如何使用“双美元”($$) 函数访问具有数组名称的表单输入元素,以便能够遍历表单验证。
<input name="field[inventory_id]" type="text" />
<input name="field[asset_tag]" type="text" />
<input name="field[idea_tag] type="text" />
<input name="field[equip_make]" type="text" />
<input name="field[equip_model]" type="text" />
等等……
谢谢
丹B
【问题讨论】:
标签:
javascript
html
arrays
forms
mootools
【解决方案1】:
在 MooTools 中你可以使用例如:
$$('input[name^="field"]')
这将为您提供所有具有以“field”开头的name 属性的input 元素。
您可以将.filter() 与用于验证的函数结合起来,并在最后检查“此元素集合的长度属性”。比如:
$$('button').addEvent('click', function () {
var inputs = $$('[name^="field"]');
var notValidating = inputs.filter(function (input) {
return !input.value;
})
alert('There are ' + notValidating.length + ' inputs not validating.');
});
jsFiddle:http://jsfiddle.net/kthaqmL2/
【解决方案2】:
所以我研究了一会儿,得出的结论是给所有输入元素一个类名是最好的方法。然后我使用 mootools 双美元函数来迭代具有该类名的所有项目。