2009年7月1日 星期三

設定 jQuery 取出的多筆結果

透過 jQuery ,簡單的一行 $("input[id*=btn_rec_edit]") 就可以取得畫面上所有名稱包含 btn_rec_edit 字眼的按鈕。但如果是要用來設定每個按鈕的 onclick 事件,且會個別抓取每個按鈕上所具有的特定值時,要如何撰寫?

$("input[id*=btn_rec_edit]").click(function(){
   
});

假設我的每個按鈕,都有自己的屬性 prd_id ,有看到網路上有人使用 this.id this.value 等語法去抓屬性的值,而我也針對自己的需求,寫了 this.prd_id ,真的可以。然而,當我換到 FireFox 之後,這語法就失效了,跑出 undefined出來。

$("input[id*=btn_rec_edit]").click(function(){
   alert(this.prd_id);
});

自己再詳細的看了 jQuery 的 Documentation 之後,看到有這個用法,$(this) ,就表示目前被壓下去的按鈕物件。這語法在 FireFox 上就可以正確執行了。

$("input[id*=btn_rec_edit]").click(function(){
   alert($(this).attr("prd_id"));
});


沒有留言:

張貼留言