我哪里出错?
jQuery(document).ready(function($){
//always focus on input field
//$('#documentID').focus();
$("#btnSubmit").on("click", function(){
var docID = $('#documentID').val();
alert("test "+docID);
var lookupData = new Array();
$.ajax({
type:"POST",
url: "lookup.php",
data: {documentID: docID},
dataType: 'text',
success: function(msg){
alert(msg);//shows Wrong as expected
//do stuff after the AJAX calls successfully completes
$("#note").ajaxComplete(function(){
if(msg == "Wrong")
{
result = 'Not so OK';
$('#logo_header').hide();//just to test things
}
else
{
result = 'OK lookup';
lookuData = msg;//populate all data
}
$(this).html(result);
});//#end ajaxComplete and populate note
}//#end success
});//#end AJAX
})//#end function
});
并且lookup.php返回错误或确定(用于测试目的),但我无法使用div #note来显示消息并且div logo_header不会隐藏。
任何信息?
答案 0 :(得分:0)
我假设$("#note")
没有处理ajax调用,因此它永远不会访问if (msg == "wrong")
语句。
尝试删除$("#note").ajaxComplete
并且:
success: function(msg){
alert(msg);//shows Wrong as expected
//do stuff after the AJAX calls successfully completes
if(msg == "Wrong")
{
result = 'Not so OK';
$('#logo_header').hide();//just to test things
}
else
{
result = 'OK lookup';
lookuData = msg;//populate all data
}
$(this).html(result);
}//#end
答案 1 :(得分:0)
Tx,伙计们会调查你的建议,但我认为我发现了问题。我正在使用twitter bootstrap和默认的jquery src
http://code.jquery.com/jquery.js
当我使用这个jquery源
<script src="./site/wp-includes/js/jquery/jquery.js?ver=1.8.3"></script>
ajaxComplete似乎正常工作。
所以我的结论jQuery 1.9.1不支持ajaxComplete vs jQuery 1.8.3吗????
@Aspiring Aqib,这是一个简单的测试。下一步是从lookup.php(json)返回一个数组。所以我认为我需要改变哪些msg / data正在返回。