【发布时间】:2017-02-08 17:46:27
【问题描述】:
我正在使用 jquery 和 jquery 表单 API 通过 PHP 上传图片, 当我为 jquery 表单 API 使用回调匿名函数时,它不断在每个匿名函数上抛出这个错误,
Uncaught SyntaxError: Unexpected token (
我什至不能在这段代码中使用任何其他 jquery 函数, 也许如果我修复了这个错误,它会起作用,
我的代码是
$(function() {
// bind 'myForm' and provide a simple callback function
$('#myForm').ajaxForm(function() {
beforeSend: function() {
alert('before send');
$('#form-asset-create').validate();
},
uploadProgress: function() {},
success: function() {},
compile: function() {}
});
$(".card").hide();
});
【问题讨论】:
-
你的语法有错误,你不应该使用
function ()作为ajaxForm的第一个参数。如果你使用一个函数,你在里面使用语句,beforeSend: function() {...不是语句是对象的一部分。 -
实际上我只从 JQuery 表单 API 文档页面中获取了该语法:o
-
你能提供链接吗?你所拥有的没有有效的javascript。甚至无法解析。
-
功能不完整,例如 beforeSend: 的文档,我尝试使用它,
-
您在复制时出错,您的代码几乎没问题,只需在
ajaxForm(之后删除function ()即可。请参阅 mplungjan 答案。您作为参数传递给该函数的是function() { beforeSend: ... },这是没有意义的。要成为有效的 js,你要么传递一个函数,要么传递一个对象,你给它一个内部包含无效 js 代码的函数。即使你更正了函数内部的代码,它也是有效的 js 而不是函数代码,因为ajaxForm(需要一个对象作为参数而不是函数。
标签: javascript jquery ajax ajaxform jqueryform