Javascript jQuery-发布时调用非法
我正在创建一个联系人表单,执行该表单时出现以下错误: 未捕获类型错误:非法调用 这是我的密码,似乎找不到有什么问题。 如果您希望看到问题的现场解决: 我以前用过它,现在我对验证做了一些更改,只是稍微清理了一下,它开始困扰我 感谢我能得到的一切帮助Javascript jQuery-发布时调用非法,javascript,jquery,Javascript,Jquery,我正在创建一个联系人表单,执行该表单时出现以下错误: 未捕获类型错误:非法调用 这是我的密码,似乎找不到有什么问题。 如果您希望看到问题的现场解决: 我以前用过它,现在我对验证做了一些更改,只是稍微清理了一下,它开始困扰我 感谢我能得到的一切帮助 谢谢大家! 您的post数据如下所示 post_data = {'cName':name, 'cEmail':email, 'cCompany':company, 'cPhone':phone, 'cSkype':skype, 'cBudget':bu
谢谢大家! 您的post数据如下所示
post_data = {'cName':name, 'cEmail':email, 'cCompany':company, 'cPhone':phone, 'cSkype':skype, 'cBudget':budget, 'cMessage':message};
请注意,您引用的所有变量都是jQuery对象
var name = $('#contact input[name="name"]');
var email = $('#contact input[name="email"]');
var company = $('#contact input[name="company"]');
var phone = $('#contact input[name="phone"]');
etc ...
无法使用$发送jQuery对象。post
,这是一种“非法调用”,您可能需要该值
var post_data = {
cName : name.val(),
cEmail : email.val(),
etc ...
}
post_data
对象上的值是jQuery对象,而不是字符串:
post_data = {'cName':name, 'cEmail':email, 'cCompany':company, 'cPhone':phone, 'cSkype':skype, 'cBudget':budget, 'cMessage':message};
相反,您应该得到它的值:
post_data = {
'cName': name.val(),
'cEmail': email.val(),
'cCompany': company.val(),
'cPhone': phone.val(),
'cSkype': skype.val(),
'cBudget': budget.val(),
'cMessage': message.val()
};
但是使用提交表单字段值有一种更简单的方法:
$.post('contactsubmit.php', $('#contact').serialize(), function(data) {
}, 'json');
控制台通常也会告诉你错误在哪一行。我在你发布的链接中没有发现错误。我知道,但它会把我扔到jquery源文件@FelixKlingTry,填充所有非(可选)字段)+选择一个预算@J08691作为旁注,你有一个完全无用的if语句。首先,回调只在成功时触发,因此
response.type
不太可能是error
,其次,在条件的两个部分中都执行相同的操作
$.post('contactsubmit.php', $('#contact').serialize(), function(data) {
}, 'json');