新手,想问一下为什么13、18行那句,放在 if 中就没有执行,放在下面 else 中就可以呢?难道跟return false有关吗?
可能原因是什么?
试了很久没找到原因,其他地方应该都正确。
$.ajax({ type: "POST", url: "login.php?action=login", dataType:"json", data: {"id":user,"p":userpwd}, beforeSend: function(){ …… }, success: function(json){ var userr = document.getElementById("user"); var userpwdd = document.getElementById("userpwd"); if(json.success == 1){ $("#lou").html('用户:' + user); } else{ if(json.success <5){$("#user").focus();}else{$("#userpwd").focus();} userpwdd.value=""; $("#lou").html('用户:' + user); } } });
这样你先 alert(json.success);//看这个里面是什么值,如果是1 确保后台输出的json格式 可以这样做:
var demo=eval(json.success);
然后在做判断
if(demo == 1){ ......}
typeof json.success 若果是number才能 == 1如果不是 写成 == “1”
if(json.success == '1')
if(json.success == "1")
以上问题也碰到过。
你可以用console.log(json);看下变量