Paw*_*uda 5 html javascript jquery
我有一个简单的函数,当选中/取消选中复选框时,它会禁用/启用select元素.它运作良好.但是,一旦提交表单并且已经选中了复选框加载(在PHP的帮助下),在我单击复选框两次之前,选择不会被禁用.
<select id="worldSelect" class="select" name="world">
<input id="worldcb" type="checkbox" checked="yes" value="any" name="world">
any world
function toggleSelection(element){
if (this.checked) {
$(element.data).attr('disabled', 'disabled');
} else {
$(element.data).removeAttr('disabled');
}
}
$(function() {
$('#worldcb').click('#worldSelect', toggleSelection);
});
Run Code Online (Sandbox Code Playgroud)
我已经尝试了几件事,但到目前为止我对jQuery没有任何好处......
看起来你几乎就在那里.只是一些语法错误.
$("#worldcb").click(function(){
var el = $("#worldSelect");
if (el){
el.removeAttr("disabled");
if (this.checked){
el.attr("disabled", "disabled");
}
}
});
Run Code Online (Sandbox Code Playgroud)
这是一个jsFiddle来演示.
至于在页面回发时保留禁用状态,您只需在加载页面时运行一些逻辑.
if ($("#worldcb").is(":checked")){
$("#worldSelect").attr("disabled", "disabled");
}
Run Code Online (Sandbox Code Playgroud)