我正在尝试禁用我的 Aspx 页面上的一些控件,但无法使其正常工作。我已经尝试过 Javascript 和 JQuery,所以我知道我必须做一些简单的错误。
这就是我的自动取款机,我知道它肯定会在我想要的时候进入这两个功能,因为我一直在提醒我这样说。但是,控件始终保持启用状态!
<script language="javascript" type="text/javascript">
function fun1(){
var input = $('#txtDocs');
input.removeAttr('disabled');
}
function fun2() {
var input = $('#txtDocs');
input.attr('disabled', 'disabled');
}
以及控制本身;
<p>
<asp:TextBox ID="txtDocs" runat="server" Width="218px"
Height="75px" TextMode="MultiLine" MaxLength="40"/>
</p>
我还尝试将两个函数中的代码换成以下各种版本;
document.getElementById("txtDocs").enabled = true;
document.getElementById("txtDocs").attributes.enabled = true;
document.getElementById("txtDocs").disabled = false;
虽然不好。我究竟做错了什么?
更新
当前代码;
function fun1(){
alert("1 enable");
$('#txtDocs').removeAttr('disabled');
alert("2 enable");
}
function fun2() {
alert("1 disable");
$('#txtDocs').prop('disabled', true);
alert("2 disable");
}
<asp:TextBox ID="txtDocs" runat="server" Width="218px" ClientIDMode="Static"
Height="75px" TextMode="MultiLine" MaxLength="40"/>
仍然不好:/我只是看到alert("1 disable")
,alert("1 enable")
所以alert("2 enable")
没有通过fun2 ...
笔记
调试到我的代码并注意到在运行时我的文本框实际上是一个文本区域。有什么意义吗?它的 ID 也会在开头标记通常的“ctl00_MainContentPlaceHolder_”。