Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从$(';input[type=";text";]';)中取反一个文本框_Javascript_Jquery_Jquery Selectors - Fatal编程技术网

Javascript 从$(';input[type=";text";]';)中取反一个文本框

Javascript 从$(';input[type=";text";]';)中取反一个文本框,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,我有4个文本框,我写了一些代码: $('input[type="text"]').keyup(function () { if ($(this).val() == '') { ... 我不想将此代码应用于1个文本框,我该怎么办?向3个文本框添加一个公共类 <input type="text" class="myclass" /> 任何其他解决方案都会降低代码的可维护性。如果会有另一个特殊的文本框呢?您也将对此做一个例外?在3个文本框中添加一个公共类 <input t

我有4个文本框,我写了一些代码:

$('input[type="text"]').keyup(function () {
    if ($(this).val() == '') {
...

我不想将此代码应用于1个文本框,我该怎么办?

向3个文本框添加一个公共类

<input type="text" class="myclass" />

任何其他解决方案都会降低代码的可维护性。如果会有另一个特殊的文本框呢?您也将对此做一个例外?

在3个文本框中添加一个公共类

<input type="text" class="myclass" />

任何其他解决方案都会降低代码的可维护性。如果会有另一个特殊的文本框呢?您也将对此破例?

给该文本框一个
id
,并按如下方式更新您的代码:

$('input[type="text"]:not("#id_of_txt")').keyup(function () {
    if ($(this).val() == '') {
    }
});
$('input.class_of_txt').keyup(function () {
这个解决方案只是为了回答您的问题,而不是建议作为一个好的做法。在某个时刻,您可能会在DOM中添加更多的输入框,并且必须不断添加到
:not
列表中,因为其他所有内容都将绑定到keyup事件

更好的解决方案是为三个输入框提供一个公共类,并按如下方式更新代码:

$('input[type="text"]:not("#id_of_txt")').keyup(function () {
    if ($(this).val() == '') {
    }
});
$('input.class_of_txt').keyup(function () {

为该文本框指定一个
id
,并按如下方式更新代码:

$('input[type="text"]:not("#id_of_txt")').keyup(function () {
    if ($(this).val() == '') {
    }
});
$('input.class_of_txt').keyup(function () {
这个解决方案只是为了回答您的问题,而不是建议作为一个好的做法。在某个时刻,您可能会在DOM中添加更多的输入框,并且必须不断添加到
:not
列表中,因为其他所有内容都将绑定到keyup事件

更好的解决方案是为三个输入框提供一个公共类,并按如下方式更新代码:

$('input[type="text"]:not("#id_of_txt")').keyup(function () {
    if ($(this).val() == '') {
    }
});
$('input.class_of_txt').keyup(function () {

非常糟糕的未来解决方案。。。ID列表可能会变得很长:)。虽然它很差,但它回答了OP向T提出的问题。我现在可以更新答案并发布更好的解决方案以及如何改进它的建议。未来的解决方案非常差。。。ID列表可能会变得很长:)。尽管它很差,但它向T回答了OP的问题。我现在可以更新答案,并发布更好的解决方案和如何改进它的建议。