我有一个表单并且在其中有10个输入标签。每个都有不同的id属性..我想一次获取并打印所有id。你能帮我解决这个问题
答案 0 :(得分:2)
这应该适合你:
var ids = [];
$('.your-form input').each(function(){
ids.push(this.id);
});
console.log(ids.join(', '));
这里有效 - http://jsfiddle.net/cy7wA/1/
答案 1 :(得分:2)
最好的方法是使用$.fn.map
,$.fn.get
和Array.prototype.join
:
var ids = $('#form input').map(function() {
return this.id
}).get().join(', ');
这将得到一个很好的ids
列表,没有任何不必要的逗号或你有什么。
答案 2 :(得分:0)
$('#form_id').find('input').each(function(){
console.log($(this).attr('id'));
});
答案 3 :(得分:0)
试试这样:
$('#myForm :input').each(function ()
{
Console.log('ID: ' + $(this).attr('id'));
});
或
$ids = $('#myform input[id]').map(function() {
return this.id;
}).get();
答案 4 :(得分:0)
请查看http://jsfiddle.net/2dJAN/62/
$(':input').each(function(){
alert($(this).attr('id'));
});
答案 5 :(得分:0)
快速回答:您可以轻松使用jQuery“serialize”函数快速获取表单上的所有元素并将它们放入键/值数组中:
function getVals()
{
var myform = document.getElementById("formfoo");
var mydata = myform.serialize();
var myhtml = "";
for ( key in mydata )
{
myhtml += "KEY IS: " + key + " VAL IS: " + mydata[key] + "<br />";
}
document.getElementById("mytestdiv").innerHTML = myhtml;
return true;
}
它比其他示例的代码多一些,但我喜欢使用单个对象。