Javascript 通过jquery单击“enabled=false”复选框(asp.net)
我想通过单击它来创建一个可用的asp.net控件。使用java。我知道有removeAttr'disabled','disabled',但它根本不起作用。通过查看DevTools,我还知道,当我将asp.net控件设置为enabled=false时,控件将被放入MyControl中。这让我想到,也许我应该用另一种方式禁用我的控制,但我不知道怎么做。如果有人能告诉我解决这个问题的方法,或者我应该努力解决这个问题的方向,我会很高兴。如果您希望设置enabled=false,这似乎是您在标题中想要的;我不明白你想在问题中说什么…:Javascript 通过jquery单击“enabled=false”复选框(asp.net),javascript,jquery,asp.net,checkbox,controls,Javascript,Jquery,Asp.net,Checkbox,Controls,我想通过单击它来创建一个可用的asp.net控件。使用java。我知道有removeAttr'disabled','disabled',但它根本不起作用。通过查看DevTools,我还知道,当我将asp.net控件设置为enabled=false时,控件将被放入MyControl中。这让我想到,也许我应该用另一种方式禁用我的控制,但我不知道怎么做。如果有人能告诉我解决这个问题的方法,或者我应该努力解决这个问题的方向,我会很高兴。如果您希望设置enabled=false,这似乎是您在标题中想要的;
attr('enabled', 'false');
对于disabled=true:
attr('disabled', 'true');
希望这是你想要的
更新:看看下面的评论,这是我的新答案
首先,分配一个ID:
<span id="control" disabled="disabled">MyControl</span>
示例html
<div>
<input type="checkbox" id="check" />
<br />
<input type="text" id="text" />
</div>
场景B:您希望单击复选框并切换其自身的禁用状态
这没有任何意义,因为当复选框未选中时,它有点被禁用。此外,您无法捕获已禁用元素上的单击事件。最好的解决方案是在该复选框上创建一个div,当单击该复选框时,该复选框将被禁用,并且它将被禁用
removeAttr('disabled','disabled')
尽管您必须创建一个函数,该函数将在开始时检测div应该覆盖并禁用哪个复选框java!=javascript;记住要清楚地说明。我很快就会想出一个答案。可能重复:?关于你说:[…]它根本不起作用,很难猜测。请在问题中添加相关的JavaScript部分。也许你的选择器错了,或者您没有将脚本放在正文的末尾,或者您没有在DOM ready上调用它…有太多的可能性。提问者希望通过单击禁用的元素本身来重新启用禁用的元素-至少我是这样理解的。您的回答是混淆OP$。control引用元素而不是类控件id。对于id->$控件和禁用的元素,无法单击。
$("#check").click(function(){
var text = $("#text");
if(text.is(":disabled")){
text.prop("disabled", false );
}
else{
text.prop("disabled", true );
}
});
removeAttr('disabled','disabled')