如果禁用输入,则单击输入上的Jquery不起作用

时间:2015-10-27 18:08:44

标签: jquery

有没有办法告诉jQuery只定位那些被禁用的元素?

https://jsfiddle.net/o80cqp4h/

$(document).on("click", "input", function () {
   console.log('click');
   $(this).prop('disabled', false);
});

1 个答案:

答案 0 :(得分:1)

jQuery忽略对已禁用元素的点击(排序),因此诀窍是检测链上方的点击,然后查明它是否在输入元素上:

$(document).on("click", function (e) {
    $clicked = $(e.toElement);
    if ($clicked.is("input:disabled")) {
        $clicked.prop('disabled', false);
    }
});

如果你必须支持firefox,你必须更加讨厌。

https://jsfiddle.net/o80cqp4h/3/< - 使用firefox支持

https://jsfiddle.net/o80cqp4h/1/