jquery的filter not split的用法

filter(),not():


程序代碼
<script type="text/javascript">
$(document).ready(function() {
//輸出 hello
alert($("p").filter(".selected").html());
//輸出 How are you?
alert($("p").not(".selected").html());
});
</script>

</head>
<body>

<p class="selected">Hello</p><p>How are you?</p>
<!--
一個新的挑戰是從一組類似或相同的元素中只選擇某一個特定的元素。
jQuery提供了filter()和not()來做這個。
filter()能夠將元素精簡到只剩下滿足過濾條件的那些,not()恰恰相反,他移除了所有滿足條件的。-->
</body>


split():

程序代碼
<script type="text/javascript">
$(document).ready(function(){
$("input[@value=btn1]").click(function(){
//以¥分割
alert($("span.sale").text().split("¥")[2]+"||"+$("span.sale").text().split("¥")[1]+"||"+$("span.sale").text().split("¥")[0]);
});

});
</script>
</head>

<body>
獲取價格120:<input type="button" value="btn1" ><br>

<span class="sale">
Out Sale: ¥160<br />
Deal Price: ¥120</span>


<!--
應用split來解決這個問題。下面給出一個用split的實例:
msg ="2007/10/01";
msg = msg.split("/");
alert(msg[2]);
他會把 msg 分成一個3塊組成一個數組 ,然後就可以輕鬆獲取了。
-->
</body>



求助:filter在Firefox裏出錯,不知道是不是我寫的不對?

var stext = $(data).filter('#content').html();

data是通過ajax取回的內容,我想進行篩選,只要取回內容裏的ID爲content的部分。
這樣的寫法在IE裏一切正常,不知道爲什麼在Firefox裏就不行,用Firebug來進行查找錯誤,提示是jquery-1.2.1.js裏第1521 行的“f = ('false||function(a,i){return ' + f + '}');”這段有問題,不知道是不是BUG,也不知道該如何處理。折騰N久,近乎崩潰了!沒辦法,本人剛接觸jQuery,還是個小菜鳥。


這個問題已經自己解決!
不知道有沒有人遇到同樣的問題,但我想還是分享一下自己的經驗!
用 filter進行篩選的時候,固定的數據如 march.hu 所說的那個(var data = "<p>第一段</p><p id='second'>第二段</p>";),這種沒有關係,但用AJAX取回動態數據進行篩選的時候,必須同時指定標籤類型和 ID,才能正常進行篩選,要不然在Firefox下會出錯。
錯誤的:var stext = $(data).filter('#content').html();
正確的:var stext = $(data).filter('div#content').html(); 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章