当我尝试从表单中记录一个值时,我遇到了一个非常烦人的NaN
错误,我无法弄明白。
我尝试运行JSON.parse
,但它又向我发出了另一个错误unexpected token o
<form>
<input type="text" name="contact-name">
<button id="submit">Submit</button>
</form>
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
$('#submit-form').click(function(e) {
e.preventDefault();
var test = $('form').serializeObject();
console.log(test);
console.log(test.contact-name);
});
答案 0 :(得分:3)
因为你正在减去test.contact和name。你必须使用括号语法:
test["contact-name"]