javascript - 如何将 ASP.NET 控件名称传递给 Javascript 函数?

标签 javascript asp.net variables

我在谷歌上搜索了这个问题,找到了很多“答案”,但没有一个对我有用,所以也许你们聪明的人可以给我一个“明确”的答案?

我有一个 Javascript 函数:

function enableSaveLink() {
    document.getElementById('<%= btnSaveLink.ClientID %>').removeAttribute('disabled');
}  

这工作正常,但显然它是硬编码的以在我的页面上启用特定控件。我想要的是能够从页面上的任何控件调用此函数,并将我想要启用的控件的名称作为变量传递。因此,在理想的情况下,我的 Javascript 函数将如下所示:

function enableControl(ctl) {
    document.getElementById(ctl).removeAttribute('disabled');
}  

我会这样调用它:

<asp:button id="btnTestButton" runat="server" Text="Click Me" onclientclick="enableControl('txtTestTextbox') />
<asp:button id="txtTestTextbox" runat="server" enabled="false />

我知道我传递控件名称的方式永远不会起作用,但我尝试过以所有不同的方式传递它,但都不起作用,所以这只是为了说明目的。谁能告诉我如何真正做到这一点?

最佳答案

您需要使用ClientID控件的属性。

这会有所帮助:

<asp:button id="btnTest" runat="server" Text="Click Me" 
            onclientclick="enableControl('<%= lblTest.ClientID %>') />

关于javascript - 如何将 ASP.NET 控件名称传递给 Javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11986282/

相关文章:

javascript - 删除 yAxis 时保留一些循环迭代 - Highcharts/Angular

c# - 从 Controller 查看 ASP.net MVC5 访问按钮

asp.net - 我怎样才能在 10 天后约会?在 asp.net 中

java - 变量 hitOrStick 可能尚未初始化

c++ - C++ 中的变量到底是什么?

javascript - jQuery - 在创建动画加载栏时遇到问题,从左到右缩小

javascript - 如何向从react-router链接标签呈现的 anchor 标签添加ID属性?

Javascript:Unicode 字符串到十六进制

c# - 在Asp.net中获取两次之间的小时数

linux - bash 记录器 : Cannot find a way to add MaxBackupIndex to this logger implementation