javascript - 单击 HTML 选择的父项

标签 javascript jquery html

当它被禁用时,我似乎无法单击 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/

相关文章:

javascript - style.fontWeight 不工作

javascript - Protractor : mocking EventSource

javascript - 将 JavaScript 对象转换为 JSON 并 POST 它

javascript - 通过 jQuery 添加事件到新创建的 DOM 元素

javascript - 数据未使用本地存储存储? - HTML5

javascript - 如何快速改变演奏音调的频率而不会发出crack啪声?

javascript - 遍历 $ ("body")除了使用 jquery 的某些标签

javascript - 为什么 fusionMap.js 插件会改变 Google map 的起始位置?

html - 垂直文本始终与图像侧面保持相同的距离

javascript - Ajax 在没有用户交互的情况下以 1 秒的间隔显示文件