对于jQuery,我有以下扩展方法来序列化名为jquery.extension.js
的Json:
jQuery.fn.extend({
serializeJSON: function () {
return this.serializeArray().reduce(function (result, item) {
result[item.name] = item.value;
return result;
}, {});
}
});
我在布局上有这些引用:
<script src="~/Content/Script/jquery.extensions.js" type="text/javascript"></script>
<script src="~/Scripts/jquery-1.8.0.js" type="text/javascript"></script>
在我看来,我这样调用方法:
function createList(e) {
var form = $(this),
dataJSON = serializeJSON(form),
$saveBtn = $('#create-list-btn');
但是我得到了错误:
ReferenceError: serializeJSON is not defined
谁能帮助我意识到这里缺少什么?
答案 0 :(得分:1)
我自己发现了问题,在视图上使用它的正确方法是:
dataJSON = $(form).serializeJSON()
代替:
dataJSON = serializeJSON(form)