Jquery名称选择器文本模糊

时间:2013-07-03 11:28:37

标签: jquery

我有一些名字的文本框:

 1. txt_provider_quote_1
 2. txt_provider_quote_2
 3. txt_provider_quote_3

 4. txt_provider_quote_dlg_1
 5. txt_provider_quote_dlg_2
 6. txt_provider_quote_dlg_3

模糊功能:

$('input[name^=txt_provider_quote_]').blur(function(){
    alert("hi");
});

所有6个文本框都在执行模糊。 我希望它只针对前3个文本框执行。

3 个答案:

答案 0 :(得分:5)

您需要从集合中过滤掉您不想要的元素。尝试:

$('input[name^=txt_provider_quote_]').not('input[name^=txt_provider_quote_dlg]').blur(function(){
    alert("hi");
});

代替。

答案 1 :(得分:1)

为受影响的输入添加公共类属性,例如:

<input type="text" name="txt_provider_quote_1" class="blur_affected">
<input type="text" name="txt_provider_quote_2" class="blur_affected">
<input type="text" name="txt_provider_quote_3" class="blur_affected">

在其他输入中省略此类:

<input type="text" name="txt_provider_quote_dlg_1">
<input type="text" name="txt_provider_quote_dlg_2">
<input type="text" name="txt_provider_quote_dlg_3">

现在jQuery:

$('input.blur_affected').blur(function(){
    alert("hi");
});

答案 2 :(得分:1)

试试这个,

    $('input[name^=txt_provider_quote_]').not('input[name^=txt_provider_quote_dlg]').blur(function(){
       alert("hi");
    });

这是demo