2011-08-04 39 views
2

我創建了一個控制(動態): 例子:添加一個jQuery函數來動態生成的控制(ASP.NET)

Button myButton = new Button(); 
myButton.Id = "button1"; 

..到目前爲止..

所以,現在,我該如何添加這個按鈕一個jQuery的功能?

像這樣的事情並沒有爲我工作:

$("#button1").live('click', function() { 
alert("hi iam getting dynamic added button");}); 

我能做些什麼?希望能跟大家能幫助我:(

+0

是在'Page_Load'動態創建您的按鈕或以後的事件? – Curt

+0

是的,Button是在page_load或Page_init中創建的,但它不工作..我認爲,導致按鈕總是重新生成:( – eMi

回答

0

,你可以創建一個通用的js函數,它已被點擊控件的ID

function ShowMessage(){ 
    alert("hi iam getting dynamic added button"); 
} 

然後在服務器端

myButton.OnClientClick = "ShowMessage()"; 

如果你不想養一個回:

myButton.OnClientClick = "ShowMessage();return false"; 
+0

thx 4答案,但這不會工作太多,因爲我在Page_Load中創建按鈕,所以我點擊他,沒有任何反應 - 頁面重新加載(回傳) – eMi

+0

好的,這工作:myButton.OnClientClick =「ShowMessage();返回false」; thx:D – eMi

0
myButton.OnClientClick = "clientFunction()"; 

在客戶端:

function clientFunction() { 
} 
+0

thx 4答案,但這不會工作太多,因爲我在Page_Load中創建按鈕,所以我點擊他,沒有任何反應 - 頁面重新加載(回發) – eMi

0

我相信當頁面呈現給客戶,button1將改爲呈現的ID。我認爲這將是更好的添加類按鈕,並指派jQuery的事件是:

C#:

Button myButton = new Button(); 
myButton.Id = "button1"; 
myButton.CssClass = myButton.Id; 

的Javascript:

$(".button1").live('click', function() { 
alert("hi iam getting dynamic added button");}); 
+0

thx 4回答,yaa好主意,但wouldnt工作原因回傳..無論如何,我不能使用這個,因爲我會創建約100個按鈕,所以他們有不同的Id,並且在每個Button上應該有不同的事件:D – eMi

+1

爲什麼PostBack會影響它?請參閱每次修改以回答有關班級的不同 – Curt