无法从按钮 onclick 事件 ASP.NET 4 调用 Javascript 函数
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7477647/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Cant call Javascript function from button onclick event ASP.NET 4
提问by Nabeel
when ever i call a JavaScript function from asp:button
onclick
event i got this error message
当我从asp:button
onclick
事件中调用 JavaScript 函数时,我收到此错误消息
HTML
HTML
<asp:Button ID="btnFromCalOpen" runat="server" Text=" > " onclick="ShowCal()" CssClass = "SElementHide" />
Javascript
Javascript
function ShowCal() {
var elem = document.getElementById('MainContent_CalendarFrom');
if (elem.visibility = "hidden" )
{
elema.style.visibility = "visible";
elema.style.display = "block";
}
else
{
elema.style.visibility = "hidden";
elema.style.display = "none";
}
}
Error Compiler Error Message: BC30456: 'ShowCal' is not a member of 'ASP.default_aspx'.
错误编译器错误消息:BC30456:“ShowCal”不是“ASP.default_aspx”的成员。
Please Help
请帮忙
回答by p.campbell
Use OnClientClick
to have your ASP.NET button run a JavaScript method before calling its server-side method. OnClick
specifies the server side method to run.
使用OnClientClick
有你的ASP.NET按钮调用它的服务器端方法之前运行JavaScript方法。OnClick
指定要运行的服务器端方法。
<asp:Button ID="btnFromCalOpen" runat="server"
Text=" > " CssClass = "SElementHide"
OnClientClick="ShowCal()" />
回答by Kris Krause
Have you tried the OnClientClick
property?
你试过OnClientClick
物业吗?
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick.aspx
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick.aspx
Also, this does not look correct:
此外,这看起来不正确:
if (elem.visibility = "hidden")
Should be closer to:
应该更接近:
if (elem.style.visibility == "hidden")
Are you also looking for the button to prevent post back? Then, return false in your ShowCal javascript function.
您是否也在寻找防止回传的按钮?然后,在 ShowCal javascript 函数中返回 false。
回答by lincolnk
use OnClientClick
. onclick
is for a server side handler.
使用OnClientClick
. onclick
用于服务器端处理程序。
also you need to check elem.style.visibility
.
你也需要检查elem.style.visibility
。
also you're creating elem
in your js function and then trying to access elema
.
您也在elem
js 函数中创建,然后尝试访问elema
.