在 JQuery 中,如何获取任何 div 中存在的名称、id 和值的输入类型列表?
问问题
48872 次
5 回答
19
选择从具有 name、id 和 value 属性的 div 下降的输入。然后将每个匹配项的“类型”属性推入一个数组。
var inputTypes = [];
$('div input[name][id][value]').each(function(){
inputTypes.push($(this).attr('type'));
});
于 2012-08-16T08:39:59.933 回答
6
在 JQuery 中,我如何获取输入类型列表...
这?
var inputTypes = [];
$('input[name!=""][value!=""][id!=""]').each(function() {
inputTypes.push($(this).prop('type'));
});
property!=""
不仅仅是必要的,这[property]
是为了过滤掉诸如
<input type="text" name="something" value="" id="someId" />
(我假设您不想获得任何属性等于空字符串的输入)
于 2012-08-16T08:41:14.967 回答
3
您可以查看每个输入,获取它们的属性并检查每个输入的空字符串。你可以使用任何你想展示它们的方法,这里我只是将它们添加到一个数组中。
var inputs = new Array();
$("input").each(function() {
var name = $(this).attr("name");
var id = $(this).attr("id");
var val = $(this).val();
if ((name) && name !== "") && ((id) && id !== "") && ((val) && val !== "")) {
inputs.push(this);
}
});
于 2012-08-16T08:40:11.927 回答
2
您可以通过以下方式访问输入:
$('input')
.attr('type')
然后获取您想要的属性,例如.attr('id')
. 如果你需要列表将它们写入数组是$('input').each(...);
于 2012-08-16T08:42:12.550 回答
0
当您想选择具有特定名称的输入时"foo"
,如下所示:
$('div input[name="foo"]').each(function(){
// your program logic goes here
// this.val("123")
});
或者您可能想要获得它们的值不匹配的那些"123"
:
$('div input[value!="123"]').each(function(){
// your program logic goes here
});
甚至两者的结合:
$('div input[name="foo"][value!="123"]').each(function(){
// your program logic goes here
});
有关详细信息,请参阅JQuery API 参考。
于 2018-03-13T19:14:49.990 回答