我发送一个Ajax请求,它或者返回单词“假”或“用户名”。 我得到这个工作的罚款。 如果成功,它把单词“假”或“用户名”到。体类股利。 我遇到的问题是,我要检查,如果“假”,还是不“假”的存在。 所以,我的密码字段可以禁用或undisable。 问题是一切工作正常,并进行测试。 我的问题是,当我检查的“假”,它认为它的存在为NULL。 无论AJAX发出它是一个外国的数据类型,虽然它可以在HTML显示它,我似乎可以随后将其存储在一个变量,并检查是否“虚假”的存在。
$(function () {
$(".Guide_Welcome_Container").hide();
$("#inputPassword").attr("disabled", "disabled");
$("button").click(function () {
$(".Guide_Welcome_Container").fadeToggle(1000);
$(".HeaderLogin").fadeToggle(1000);
});
$("#inputEmail").keyup(function () {
var UsernameInput = $(this).val();
$.ajax({
type: "POST",
url: "PullUserDb.php",
data: {
'UsernameInput': UsernameInput
},
dataType: "html",
success: function (data) {
$('#BodyID').html(data);
var GoodUsername = $("#BodyID").html();
if (GoodUsername != "false") {
$("#inputPassword").attr("disabled", "disabled");
} else {
$("#inputPassword").removeAttr("disabled");
}
//
}
});
});
});
Answer 1:
$("#BodyID").html() //might contain some html too
尝试
console.log($("#BodyID").html());
您的成功回调中,看看它返回
Answer 2:
在你的代码
dataType: "html"
尝试JSON而不是HTML :)我的用户这个结构
{success:true,message:'OK'}
Answer 3:
把这个在你的成功的功能(我假设你被返回的字符串'false' ,而不是一个布尔值,但如果我错了,换了'false'为false ):
if (data !== 'false') {
// 1. put username on the page, like you do in the above code
// 2. enable password field
} else {
// disable password field
}
没有必要把它放在页面上,然后检查你把在网页上。 你已经被返回的用户名data对象。
文章来源: Jquery Ajax post, returns what type of data?