2011-06-29 114 views
2

找出文本輸入是否包含JQuery特定文本的最佳方法是什麼?找出文本輸入是否包含jQuery的特定文本

例如,我怎麼能找到並返回一個布爾結果,如果$('#poo').val()包括機場

編輯

這裏是解決我感謝@Niklas問題;

var IsbtFortxtPropertyHotelNameOn = false; 
$('#<%: txtPropertyHotelName.ClientID %>').keyup(function() { 

    if (/airport/i.test(this.value) && !IsbtFortxtPropertyHotelNameOn) { 
     $('#<%: txtPropertyHotelName.ClientID %>').btOn(); 
     IsbtFortxtPropertyHotelNameOn = true; 
    } else if(IsbtFortxtPropertyHotelNameOn && !/airport/i.test(this.value)) { 
     $('#<%: txtPropertyHotelName.ClientID %>').btOff(); 
     IsbtFortxtPropertyHotelNameOn = false; 
    } 
}); 

回答

3

如果你想有過的情況下,靈敏度控制,你可以使用正則表達式:

if (/airport/i.test(this.value)) alert('true'); 

,如果你需要檢查多個變量,而不是僅僅的機場變得尤其有用:

if (/(airport|station|docks)/i.test(this.value)) alert('true'); 

http://jsfiddle.net/niklasvh/tHLdD/

+0

有很好的觸感。最好的。我將使用它模糊事件,而不是keyup。謝謝 ! – tugberk

1

通常你會用兩種的indexOf做分裂功能,例如

$("#textInput").val().split("specifictext").length > 0 

這裏還有Contains Selector

說明:選擇包含指定文字的所有元素。

供應略有不同的目的,但可能會使用到您

0
if($("#elementId").val().indexOf("airport") != -1) { 
    //Contains "airport" 
} 

中的JavaScript indexOf函數返回指定字符串中第一次出現的索引。如果未找到該字符串,則返回-1

0

真的不知道,如果這是最好的辦法..但是

function findInpWithTxt(txt) { 
    var t = null; 
    $("input[type=text]").each(function() { 
     if ($(this).val().indexOf(txt) >= 0) { 
      t = this; 
      return false; 
     } 
    }); 
    return t; 
} 

這將返回輸入如果找到,則返回null不

+0

對不起,沒看過的更新,對我來說,他一直在尋找他們。 –

相關問題