尝试记录json值时出现NaN错误

时间:2015-08-05 15:04:02

标签: javascript jquery json

当我尝试从表单中记录一个值时,我遇到了一个非常烦人的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);
});

1 个答案:

答案 0 :(得分:3)

因为你正在减去test.contact和name。你必须使用括号语法:

test["contact-name"]