我正在使用' beforeSend'调用一个函数来验证选择框选项是否大于零。如果是,则返回true,否则返回false。到目前为止,非常好。
我遇到的问题是,当它返回错误时,我看到"对象不支持属性或方法'已完成'""在JavaScript调试屏幕中。否则,一切都很好。
function validateForm()
{
if($('#p_employee').val() == 0)
{
$('#errorMessage').text(' *** Please select an employee. ***');
return false;
}
else
{
return true;
}
}
function populateEmployeeDiv()
{
$.ajax
({
type: "post",
url: "populateEmployeeDiv.cfm",
cache: false,
dataType: "html",
target: 'employeeDiv',
data: {
p_employee: $('#p_employee').val()
},
beforeSend: function() {
return validateForm();
}
})
.done(function(content){
$('#employeeDiv').html(content);
})
}
答案 0 :(得分:2)
这是一个验证表格的奇怪地方?为什么不先验证它,然后如果它有效则执行ajax调用?
function populateEmployeeDiv() {
if ( validateForm() ) {
$.ajax({
type : "post",
url : "populateEmployeeDiv.cfm",
cache : false,
dataType : "html",
target : 'employeeDiv',
data : { p_employee: $('#p_employee').val() }
}).done(function(content){
$('#employeeDiv').html(content);
});
}
}