2011-08-04 32 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