无法在文档加载火功能
HTML:无法在文档加载火功能
<input class="test removeMe" type="text">
的jQuery:
$(function() {
function isEmpty() {
if (!$(".test").val()) {
$(this).removeClass("removeMe");
} else {
$(this).addClass("addMe");
}
}
isEmpty();
});
请告诉我,我在哪里错了?
我想要isEmpty
在加载/重新加载时触发并检查输入是否有价值。如果没有,它将删除removeMe
类。如果它有一定的价值,它会增加addMe
类。
控制台是空的,我无法弄清楚为什么这不能正常工作。
更新:
很奇怪......它确实火正确警报相对,如果是空的或不是,但不添加/删除类。 https://jsfiddle.net/37tt3x72/1/
更新02
它的工作,但不完全... https://jsfiddle.net/37tt3x72/2/ 的this
是不工作...如果与目标元素替换它,比它会工作。所以问题仍然存在:为什么this
不在这里工作?
罗里McCrossan提供了巨大而翔实的答案在这里:Why "$(this)" doesn't work in the following example
而且adeneo另一个SO提问时指出/如何this
作品答案:How does the "this" keyword work?
$(function() {
function isEmpty() {
if (!$(".test").val()) {
alert("Empty");
$(this).removeClass("removeMe");
} else {
alert("not Empty");
$(this).addClass("addMe");
}
}
isEmpty();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="test removeMe" type="text">
通话功能。
function isEmpty() {
if (!$(".test").val()) {
$(this).removeClass("removeMe");
} else {
$(this).addClass("addMe");
}
}
$(document).ready(function(){
isEmpty();
});
我更新了我的问题。这个''' – sorvz
这个问题意味着存储当前的元素引用,在你的情况下没有任何引用是为什么不工作。 –
是否包含'的jQuery .min.js'? –
告诉我们您的完整代码。你检查控制台吗? – Akshay
@AtaurRahmanMunna当然可以。版本3.2.0 – sorvz