下面的代码并没有像我预期的那样工作。
$.post("submitpackages.php", {inoofads:z, ivaliddays:y, country:"india", })
.done(function(data){
alert(data);
if(data=="true"){
alert("true1");
$("#success").show();
$("#error").hide();
}else{
alert("false1");
$("#success").hide();
$("#error").show();
}
});我在submitpackages.php中呼应了“真”。在post中,alert(data)打印true,然后转到else条件并打印false1,而不是打印true1。代码有什么问题?
发布于 2016-03-07 20:37:02
不需要引用。请试一下这个。
if(data==true) {
your code ...
}发布于 2016-03-07 22:17:24
因为我不确定submitpackages.php实际上返回的是什么,所以我将猜测它返回的是一个布尔值。
以下代码将警告"true“,然后测试2和4的测试结果为阳性:
var t = true
alert(t)
if(t=="true")
alert("1")
if(t==true)
alert("2")
if(t==="true")
alert("3")
if(t)
alert("4")将var t = true更改为var t = "true"仍将警告"true“,但现在对1、3和4的测试结果为阳性。
发布于 2016-03-08 13:52:49
问题是回显的值的长度与我检查的值的长度不同。回显的值长度较高。所以我使用了trim()
$.post("submitpackages.php", {inoofads:z, ivaliddays:y, country:"india", })
.done(function(data){
alert(data);
if(data.trim()=="true"){
alert("true1");
$("#success").show();
$("#error").hide();
}else{
alert("false1");
$("#success").hide();
$("#error").show();
}
});https://stackoverflow.com/questions/35843742
复制相似问题