我使用jquery(和coldfusion serverside)遇到了AJAX响应的问题.有时它会起作用,有时则不起作用.当我测试直接调用它的服务器端组件时 - 它总是有效,所以我猜问题是ajax响应.我直接从服务器获取serverurl - 因此它不应该是跨域问题.我只是显示和隐藏div-tags所以它不应该是在处理ajax响应之前重新定位url.我在这上面拔了很多头发.
addTask方法的代码:
function addTask(){
var priority = $('#ff-add-task-priority').length > 0? $('#ff-add-task-priority').val() : 0;
$.ajax({
url: settings.server+'/c/Tasks.cfc?method=addTask',
data: { userid: settings.userid,
taskname: $('#ff-add-task-name').val(),
tasknote: $('#ff-add-task-note').val(),
completed: $('#ff-add-task-completed').val(),
priority: priority,
},
type: 'POST',
dataType: 'json',
success: function(response) {
var output = addRow(response, $('#ff-add-task-name').val(), 0,0);
$('#data-list-tasks').append(output);
$('#main').children().addClass('hide');
$('#section-list-tasks').removeClass('hide');
resetForm($('#add-task-form'));
//route('#section-list-tasks');
},
error: function(ErrorMsg) {
console.log('Error', ErrorMsg);
}
});
}
Run Code Online (Sandbox Code Playgroud)
Firebug输出显示AJAX调用有时有效,有时失败:
POST http://dev.wedoolist.com/c/Tasks.cfc?method=addTask jquery.min.js (linje 2) Error Object { readyState=0, status=0, statusText="error"} #secti...t-tasks (linje 124)
POST http://dev.wedoolist.com/c/Tasks.cfc?method=getTasks 200 OK …Run Code Online (Sandbox Code Playgroud)