2011-08-12 24 views
0
<asp:button runat="server" id="a" onClick="a_Click"/>  

代碼與ClientScriptManager更新面板

protected void a_Click(object sender, EventArgs e) 
{ 
    ClientScriptManager cs = Page.ClientScript; 
    string script = "PanelVisiable($('#base')); "; 
    script += "$('#message').text(' message ');"; 
    script += "$('#message').dialog({modal:true,resizable:false,title:'پیغام',height:80,show:'clip',hide:'explode'});"; 
    cs.RegisterStartupScript(Page.GetType(), "", script, true); 

} 

這段代碼做工精細


但這

<asp:ScriptManager ID="ScriptManager1" runat="server"> 
</asp:ScriptManager> 
    <asp:UpdatePanel ID="UpdatePanel3" runat="server"><ContentTemplate> 
<asp:button runat="server" id="a" onClick="a_Click"/> 
</ContentTemplate></asp:UpdatePanel> 

代碼

protected void a_Click(object sender, EventArgs e) 
{ 
    ClientScriptManager cs = Page.ClientScript; 
    string script = "PanelVisiable($('#base')); "; 
    script += "$('#message').text(' message ');"; 
    script += "$('#message').dialog({modal:true,resizable:false,title:'پیغام',height:80,show:'clip',hide:'explode'});"; 
    cs.RegisterStartupScript(Page.GetType(), "", script, true); 

}  

但這個腳本不起作用

回答

3

嘗試使用ScriptManager.RegisterStartupScript()方法。

參見下面的MSDN文檔:ScriptManager.RegisterStartupScript()

它指出:

寄存器因爲這是一個 UpdatePanel內通過使用ScriptManager控制的控制啓動腳本塊,並將該腳本 塊到頁面。

1

使用ScriptManager.RegisterStartupScript,而不是ClientScript.RegisterStartupScript