当它被禁用时,我似乎无法单击 select
的父级。我正在尝试让用户通过单击解锁输入,但它仅适用于 inputs
。
let $input = $('input')
$input.parent().click(function() {
$input.prop('disabled', false);
})
let $select = $('select')
$select.parent().click(function() {
$select.prop('disabled', false);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="parent">
<input name="name" disabled placeholder="click me">
</div>
<div class="parent">
<select name="thing" disabled>
<option value="1">1</option>
</select>
</div>
最佳答案
添加此样式:
select[disabled] {
pointer-events: none;
}
这将导致禁用的选择忽略鼠标,从而允许其父代捕获点击。
片段:
let $input = $('input');
$input.parent().click(function() {
$input.prop('disabled', false);
});
let $select = $('select');
$select.parent().click(function() {
$select.prop('disabled', false);
});
select[disabled] {
pointer-events: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="parent">
<input name="name" disabled placeholder="click me">
</div>
<div class="parent">
<select name="thing" disabled>
<option value="1">1</option>
</select>
</div>
关于javascript - 单击 HTML 选择的父项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48530952/