我怎样才能打破这样命名的字段中的输入值:
<input name="options[abc][def]">
变成类似的东西
{'options' : { 'abc' : { 'def' : value_of_input } } }
我试过
$('form').serializeArray()
但我得到了一个二维对象,其键名喜欢
选项[abc][def]
:|
我怎样才能打破这样命名的字段中的输入值:
<input name="options[abc][def]">
变成类似的东西
{'options' : { 'abc' : { 'def' : value_of_input } } }
我试过
$('form').serializeArray()
但我得到了一个二维对象,其键名喜欢
选项[abc][def]
:|
我找到了这个库,它正是这样做的:formToObject.js
<form id="testForm">
<input name="options[abc][def]" value="test">
<input type="button" value="Convert to object »" id="convertBtn">
</form>
<script src="formToObject.js"></script>
<script>
document.getElementById('convertBtn').addEventListener('click', function() {
console.log(new formToObject('testForm'));
// Output: {"options":{"abc":{"def":"test"}}}
});
</script>
为什么不只是这样:
HTML:
<div id="test"></div>
脚本:
var opt = {'options' : { 'abc' : { 'def' : "value" } } };
document.getElementById("test").innerHTML = '<input type="text" name="' + opt + '" placeholder="'+ opt + '"/>';