2013-02-27 46 views
0

應用程序接收HTML潛水並創建一個頁面,並將其追加到獲得點擊的鏈接按鈕的ID,所有的按鈕已經綁定到一個功能

我綁定的所有鏈接按鈕的頁面集合中的一個功能應用 這將做不同的任務取決於 頁面的ID現在我有一個問題,當一個網頁有超過一個鏈接按鈕 我需要點擊的按鈕ID

HTML:

<a id="x">x </a> 
<a id="y">y </a> 

Js:

var btns = []; 
    $('#page-' + newpages[j].pageID + ' a').each(function() { 
     btns.push({ 
      id: this.id, 
      value: this.value, 
      name: this.name 
     }); 
    }); 
    for (i in btns) { 

     $('#' + btns[i].id).bind('click', function() { 
      test(btns[i].id) 
     }); 
     // bin all buttons in current page to test() 
    } 
}; 
}; 

function test(x) { 
    var page = $('.ui-page-active').attr('id'); 

    ///////// 
    //here I'm trying to ge the ID of clicked button of that page (each ID means something) 
    var pos = ''; 
    $('#' + page + ' a').click(function() { 
     //Get the id of this clicked item 

     var BID = $(this).attr("id"); 
     alert(BID); 
     send(BID); 
    }); 
+0

這樣的代碼應該被禁止從互聯網上 – crush 2013-02-27 13:31:11

+0

如果你提供一個js小提琴幫助會更容易 – 2013-02-27 13:31:15

+0

你有問題......正確的問題是什麼? – Pandian 2013-02-27 13:31:19

回答

0

爲什麼不直接綁定到每個按鈕上的單擊事件?如果通過ID進行切換,爲什麼要通過通用函數,任何共享功能都可以抽象爲一個函數,並由每個點擊處理程序使用,因此您什麼都不會釋放。

+0

這些按鈕是動態創建的,所以我不能在 – 2013-02-27 13:47:58

+0

之前綁定它們哦,對了,我想你可以訂閱一個事件,當一個新的按鈕被創建時觸發,以再次觸發綁定。這不是很好,但我會試圖做到這一點,而不是對所有標籤使用單一功能。這是一個艱難的。 – 2013-02-27 13:52:35