我有一個列表如下:的jQuery遍歷列表
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
我有一個文本框,其輸入的數值我得到一個名爲get
變量。現在,我想使用jQuery來遍歷這個列表,並且想要比較get
的值和列表的匹配值。如果它們匹配,我必須將它們打印在標籤中。
我有一個列表如下:的jQuery遍歷列表
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
我有一個文本框,其輸入的數值我得到一個名爲get
變量。現在,我想使用jQuery來遍歷這個列表,並且想要比較get
的值和列表的匹配值。如果它們匹配,我必須將它們打印在標籤中。
嘗試
var getsValue = $.trim($("#getId").val());
var matchedList = [];
$("ul > li").each(function() {
if(getsValue == $(this).text().substr(0,1)) { //check first character
//found -- do something
//add to matched list array
matchedList.push($(this).text());
}
});
或它的更好,如果你添加id來UL,所以你可以做:
$("ul#someId > li").each(function() { ...
要檢查字符包含,你可以使用的indexOf,如:
console.log(someString.indexOf("T")); //will return position if found else -1
你的意思是類似的東西
爲什麼只要使用'$(「#getId」).val()。trim();'? –
@DavidThomas IE8及以下版本不支持'trim'方法。 – undefined
@DavidThomas這有點習慣,並且事實上沒有使用.trim()之前 –
要遍歷列表項,使用jquery的each()函數。試試:
var get = "Tea"; //or other value
$('li').each(function(index) {
if($(this).text()==get){
//doMagic();
}
});
我看不到jQuery代碼。請發佈你到目前爲止。 –
打印什麼標籤? –