2016-11-25 168 views
0

代码Javascript函数从aspx.cs:呼叫从ASPX

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

功能的Javascript(写在aspx文件):

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

的 “节目”,甚至没能剧本。

回答

1

你在哪里打电话给你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(本)”;当您在运行页面时检查Chrome开发人员工具中的元素时。

0

嗯,当你总是可以用一个普通的html按钮来使用on click方法时,它的冗余来调用带有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); 
+0

我需要它,因为我动态地创建了所有按钮。 – Omer

+0

然后可能想使用scriptManager。 – John

+1

同意@John。该页面将需要一个脚本管理器:'如下所示:http://javascriptshorts.com/JavaScript-call-a-javascript-code - 嵌段从-ASPX页面代码隐藏页 –