如果在输入内部或外部单击,则阻止事件更改

时间:2018-03-02 10:16:19

标签: javascript jquery

如果在输入内部或外部点击,如何阻止事件更改,我有一些问题。

<input type="number" id="tenure-long" value="2" min="1" max="10" />

$( document ).on( 'keyup change', '#tenure-long', function( e ) {
    // fire function
});

// try block with this, but not working
$( document ).on( 'click', 'body', function(event){
    event.preventDefault();
    event.stopPropagation();
});

我想,如果用户在更改输入值后点击页面的其他元素,请不要再次点击更改事件。

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

$(document).on( 'click', 'body', function(event){
  if (event.target.id !== 'ternure-log') {
    $('#tenure-long').attr('disabled','disabled')
  }
});

如果您点击其他地方,则可以通过这种方式停用输入,但无法再次更改其值。

Here你有一个现场演示。