我需要获取div
内的所有元素,这些元素可以是多个inputs
,checkboxs
,radiobuttons
等,并转换id
或其name
和value
为JSON
可读格式。
我尝试使用the following SO question的修改版本,结果如下:
var data = $('#item').map(function() {
return {
content: $(this).val()
};
}).get();
console.log(data);
<div id="item">
<input class="item" id="test" value="data" />
</div>
但它没有返回任何价值。
答案 0 :(得分:3)
您正在运行map
访问div(由于它不是表单控件而没有值),而不是其中的输入。
您可能希望'#item :input'
是您的选择器。
答案 1 :(得分:0)
这可能会对你有所帮助
var map = {}; $("#item").children().each(function (i, element) { map[$(element).attr("id")] = $(element).val(); } );