这是我的代码:
<div id="reason_bars">Reason <select style="width:200px;" disabled="disabled"><option><option></select>
<div class="edit" style="position:absolute;left:212px;top:50px;">Edit</div></div>
我想触发一个事件,如果用class =“edit”点击div,则元素(它的兄弟)被启用,
我尝试了以下代码:
$(document).ready(function () {
$("#reason_bars .edit").click(function () {
var parent=$(this).parent();
$(parent+" select").removeAttr("disabled");
});
});
这不起作用。
还有其他选择吗?
谢谢!
答案 0 :(得分:1)
您需要将其写为$(parent).find('select').removeAttr("disabled")
答案 1 :(得分:1)
尝试:
$(document).ready(function () {
$(".edit").click(function () {
$(this).parent().find('select').removeAttr("disabled");
});
});
答案 2 :(得分:0)
尝试
$(document).ready(function () {
$("#reason_bars .edit").click(function () {
$(this).siblings('select').removeAttr("disabled");
)}
});
在你的行$(parent+" select")
中,parent是对象的引用,而不是字符串,这就是它不起作用的原因。您还可以使用jQuery兄弟选择器来简化操作。
希望这有帮助!
答案 3 :(得分:0)
你可以试试这样的事情
$(document).ready(function () {
$("#reason_bars .edit").click(function () {
$(this).parent().find("select").removeAttr("disabled");
});
});