我正在尝试JavaScript
使用选择器在对象中动态创建一个键jQuery
:
{
$("form").children("input[type=hidden]").attr("name"): $("form").children("input[type=hidden]").val()
}
不过,这很糟糕。是否可以通过这种方式动态创建密钥?
我正在尝试JavaScript
使用选择器在对象中动态创建一个键jQuery
:
{
$("form").children("input[type=hidden]").attr("name"): $("form").children("input[type=hidden]").val()
}
不过,这很糟糕。是否可以通过这种方式动态创建密钥?
您可以在两个语句中做到这一点:
var obj = {};
obj[$("form").children("input[type=hidden]").attr("name")]
= $("form").children("input[type=hidden]").val();
我个人会这样写,以避免重新创建 jQuery 集:
var obj = {}, $obj = $("form").children("input[type=hidden]");
obj[$obj.attr("name")] = $obj.val();
另请注意,这仅在 jQuery 集仅包含一个元素时才有意义。
您还可以使其一次使用多个字段:
var obj = {};
$('form > input[type="hidden"]').each(function (i, el) {
obj[el.name] = el.value;
});
如果你只有一个隐藏字段,另一个更花哨的版本:
var obj = $('form > input[type="hidden"]').serializeArray()[0];