我有一个简单的asp页面,其中包含一个函数myFunction,该函数执行两个数字的添加。
<head runat="server">
<title></title>
<script type="text/javascript">
function myFunction() {
var x = 10;
var y = 5;
x += y;
var demoP = document.getElementById("demo")
demoP.innerHTML = "x=" + x;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
<p>
</p>
<p id="demo">
<asp:Button ID="Button1" runat="server"
style="z-index: 1; left: 573px; top: 43px; position: absolute; height: 33px; width: 223px;" Text="Button" OnClick="myFunction()" />
</p>
</form>
</body>
当我运行此页面时,它会显示找不到myFuntion的错误。
答案 0 :(得分:5)
OnClick
用于服务器端回调。您想要调用客户端功能。因此,您应该使用OnClientClick
代替:
OnClientClick="myFunction()"
答案 1 :(得分:2)
protected void Page_Load(object sender, EventArgs e)
{
Button1.Attributes["onclick"] = "javascript:myFunction();";
}
你想在页面后面的代码中调用javascript函数,使用它。
答案 2 :(得分:0)
要从aspbutton调用javascript函数,你必须使用'onclientclick'事件来保证'onclick'事件的按钮。
尝试使用此
OnClientClick="myFunction()"
否则你也可以使用任何html控件的'OnClick'事件,例如'anchor tag','div','input'等。例如:
<a href= "#" OnClick="myFunction()" > Click to call function</a>
答案 3 :(得分:0)
如果要调用javascript函数,请使用此
<input type="button" id="Button1" value="Button" onclick="myFunction()" />
<asp:
的控件是服务器端控件,OnClick事件将调用服务器端方法。您的代码隐藏文件中没有定义“myFunction”方法,因此您将收到服务器端错误。