Jquery 无法使用if语句保持css更改状态
---更新后的fiddle仍然无法运行www.jsfiddle.net/atZPn/5,仅当输入数据时,才尝试使输入框中的文本保持黑暗 代码:Jquery 无法使用if语句保持css更改状态,jquery,Jquery,---更新后的fiddle仍然无法运行www.jsfiddle.net/atZPn/5,仅当输入数据时,才尝试使输入框中的文本保持黑暗 代码: getElementByClassName应该getElementsByClassName和searchbox\u val应该searchbox\u val[0] /* Search Box Leave */ $(".searchbox").blur(function() { var searchbox_val = document.getEl
getElementByClassName
应该getElementsByClassName
和searchbox\u val
应该searchbox\u val[0]
/* Search Box Leave */
$(".searchbox").blur(function() {
var searchbox_val = document.getElementsByClassName("searchbox");
if (searchbox_val[0].value.length > 0) {
return true;
}
else {
$(this).addClass("blur");
return false;
}
});
您也可以尝试以下方式:
$(".searchbox").blur(function() {
var searchbox = $(this),
searchbox_val = $.trim( searchbox.val() );
if (searchbox_val.length > 0) {
return true;
} else {
searchbox.addClass("blur");
return false;
}
});
[更新]
HTML
如果要使用document.getElementByClassName,为什么要使用jQuery?我刚刚回复了我的帖子,看到了[0],错过了s!到达那里我提出了一个愚蠢的问题:不需要这个
getElementsByClassName
来获取this
。因为searchbox已经是函数的类子对象了?更新了小提琴,但仍然无法保持?这不是一个节点,因此不需要[0]?@david您想要类似于此新演示的内容吗
<input class="searchbox" type="text" placeholder="Just some text" />
$(".searchbox").blur(function() {
var searchbox = this,
searchbox_val = $.trim( this.value );
if (searchbox_val.length > 0) {
$(searchbox).addClass("blur");
return true;
} else {
$(searchbox).removeClass("blur");
return false;
}
});
$(".searchbox").blur(function() {
var searchbox = this,
searchbox_val = $.trim( this.value );
if (searchbox_val.length > 0) {
$(searchbox).addClass("blur");
return true;
} else {
$(searchbox).removeClass("blur");
return false;
}
});