对于一个要求,我需要在ASP.NET中触发按钮的客户端和服务器端单击事件。那可能吗?我尝试过如下。但它不会触发客户端点击事件。
[ASPX]
<asp:Button ID="Button1" runat="server" Text="Disable" OnClick="disable" CausesValidation="false" OnClientClick="return click();" />
[脚本]
function click()
{
alert("hi")
}
答案 0 :(得分:9)
是的,这是可能的。如果客户端Javascript返回true
,则将调用服务器端方法。
例如:
function click()
{
return confirm("Do you want to continue?");
}
答案 1 :(得分:0)
<asp:Button ID="Button1" runat="server" Text="Disable" OnClick="disable" CausesValidation="false" OnClientClick="click();" />
function click()
{
alert("hi");
this.click();
}
答案 2 :(得分:0)
必须在代码中调用客户端功能。唯一的事情取决于它返回的服务器端函数将被调用:
function Click() {
alert('Hi');
if (somecondition) {
return true;
}
return false;
}
如果您的代码“禁用”中提到它的名称正确,请检查您的服务器端事件处理程序。我认为这不是正确的名称。
还要检查你是否真的需要CausesValidation属性?因为客户端函数是手动调用的,因此可能不再需要验证器。