簡體   English   中英

從aspx調用Javascript函數

[英]Call a Javascript function from aspx

來自aspx.cs的代碼:

.......
button.OnClientClick = "onButtonClick(this)";
.....

Javascript函數(用aspx文件編寫):

<script> 
        function onButtonClick(event) {
           ....
        }
</script>

“程序”甚至都沒有到達腳本。

您在哪里調用button.OnClientClick分配? 如果它是在頁面加載或按鈕單擊事件中,則它應該起作用。 如果您使用ajax方法調用它,則按鈕可能在分配后呈現,所以也許就是您的問題。

protected void Page_Load(object sender, EventArgs e)
{
    Button1.OnClientClick = "clicky(this)";
}

在.aspx頁上,在結束標記之前:

<script>
   function clicky(e) {
      alert("click");
   }
</script>

您應該能夠看到onclick =“ clicky(this)”; 當您在運行頁面時檢查Chrome開發人員工具中的元素時。

那么,當您始終只可以將on click方法與普通的html按鈕一起使用時,使用asp按鈕調用JavaScript是多余的。

 <button onclick="onButtonClick()">Click me</button> 

但是,這是您可以通過以下方式實現的方法

Response.write("<script type=""text/javascript"">onButtonClick();</script>")

// OR
ClientScript.RegisterStartupScript(GetType(), "Javascript", "javascript:onButtonClick(); ", true);
// OR 
string name = "onButtonClick()";
        ScriptManager.RegisterClientScriptBlock(this, typeof(string), "Key", name, true);
// OR    
ScriptManager.RegisterStartupScript(this, GetType(), name, false); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM