我正在尝试从 JS 调用 C# 函数。我不能使用ajax。我尝试创建一个 ASP.NET 按钮,当单击它时,它会调用 C# 函数并从 JS 调用单击函数:
在 HTML 上:
<asp:Button runat="server" ID="UploadButton" OnClick="Upload_Click" />
JS:
alert("Before CLICK");
document.getElementById("UploadButton").click();
alert("After CLICK");
ASP.NET:
protected void Upload_Click(object sender, EventArgs e)
{
//CODE
}
问题是JS的点击事件不起作用。我试图在 JS 代码的第一行之后写一个警报,看看代码是否丰富到该行,但我只能看到 “After CLICK”
。
我看过这个答案:Button's .click() command not working in Chrome但我不太明白这一点。
最佳答案
您应该将ClientIDMode
设置为静态
<asp:Button runat="server" ID="UploadButton" ClientIDMode="Static" OnClick="Upload_Click" />
否则,它将有一些由 ASP.NET 生成的随机 id,将 CLientIDMode 设置为 Static,您是说 ASP.NET 不会干扰您的 id 并保持它们完整。
其他选项是使用 ClientID
属性,该属性将具有自动生成的 id 值,例如
document.getElementById('<%= UploadButton.ClientID %>').click();
关于javascript - asp.net按钮-JS点击不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26201891/