【发布时间】:2014-12-09 08:10:46
【问题描述】:
我有一个表单来调用 ajax 进行后端处理,所有输入都将存储在表中并返回“成功”以通知用户提交成功。但是我在回调过程中遇到了一个问题,输入数据可以保存到表中,但是回调因下面的错误而停止,我不知道出了什么问题,相同的脚本应用于另一个表单(具有不同的表单字段)运行良好,请帮忙解决。
控制台日志(Chrome):
Uncaught TypeError: Cannot read property 'length' of undefined
m.extend.each
$.ajax.success
j
k.fireWith
x
b
火狐
TypeError: a is undefined
...rCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e...
脚本:
$(document).ready(function() {
$("#status").hide();
$('#btn_submit').click(function(){
var params = $('#project_form').serialize();
var btn = $(this);
btn.button('loading')
$.ajax({
url: baseurl + '/process_form.php',
type: 'POST',
data: params,
dataType: 'json',
success: function(response){
if(response.success == 'success'){
$('#status').html('<b>Thank you</b>').show();
$('html,body').animate({
scrollTop: $('#top').offset().top
},500);
}else{
$('[id$="_error"]').html('');
$.each(response.error, function(key, value){
if(value){
$('#' + key + '_error').html(value);
}
});
}
},
error: function(){
console.log(arguments);
}
}).always(function(){
btn.button('reset')
});
});
});
【问题讨论】:
-
请添加“process_form.php”文件的代码
-
我们可能也需要html(形式)
-
是否定义了
response.error,并且是正确的数组/对象