.val()取到的值是字符串
jsp:
<input type="hidden" id="showStatus" name="showStatus" value="${qc.showStatus}">
js:
var showStatus=$("#showStatus").val();
if(showStatus==1){
$("#label4").attr("class","here");
}else if(showStatus==0){
$("#label5").attr("class","here");
}else{
$("#label6").attr("class", "here");
}
从后台传给jsp的showStatus是short类型,值是null,
然后js用.val()取到的值是null,但是在js中,走进了else if(showStatus==0),但是,我们期望它走进else,所以,结果不是我们想要的。
解决办法:
法一:showStatus==1和showStatus==0分别改成showStatus==“1”和showStatus==“0”;
法二:把showStatus强转成Int类型,再判断,如右边所示:var showStatus = parseInt($("#showStatus").val();
综上,得出jQuery的id选择器的.val()取到的值,默认是字符串类型的,那么可不可以得出一个结论--在jsp页面的值都是字符串类型的呢?取到后,要转换类型?