这应该很简单,但我无法让它发挥作用。我试图检查隐藏输入的值是否在同一形式的textarea焦点上为空。我不明白为什么这不会警告()我的消息是空的:
$("#postbody").focus(function() {
var inputLength = $("#topicCategory").val().length;
console.log(inputLength);// outputs 0
if( inputLength == 0 ) {// condition is true, but code does not run.
alert("Please select a category to post your question in.");
}
});
我在这里错过了什么吗?
我也尝试过各种各样的方法而没有运气。
答案 0 :(得分:2)
我尝试了你的条件语句,它确实有效。
由于你期望零,而不是使用双等于检查零,你可以使用NOT运算符,因为零评估为假。
if (!inputLength) {// condition is true, but code does not run.
console.log("Please select a category to post your question in.");
}
答案 1 :(得分:0)
在DOM中创建textarea postbody之前,您正在附加onfocus处理函数。您必须在JQuery.ready()函数中附加处理函数,以确保其中的代码在DOM准备好后执行。
$(document).ready(function(){
$("#postbody").focus(function () {
var inputLength = $("#topicCategory").val().length;
console.log(inputLength);// outputs 0
if( inputLength == 0 ) {// condition is true, but code does not run.
alert("Please select a category to post your question in.");
}
});
});