在浏览器中触发输入值的更改而无需用户交互

时间:2018-02-05 10:04:15

标签: javascript jquery

我有两个输入字段,比方说#a和#b。

通过单击#a并插入ch​​ar,我会触发一个AJAX请求。 响应正在填充#b。

的值

如何在此处检测到任何更改?

上面的代码只能通过在浏览器中直接进行操作来实现

$('#b').on('change input keyup', function(){
  var that = $(this);
  console.log('changed');
  if(that.val()){
    console.log(that.val());
  }
});

1 个答案:

答案 0 :(得分:1)

在jquery docs change event上列出:

  

注意:使用JavaScript更改输入元素的值   例如,.val()不会触发事件。

因此,您需要在ajax成功后手动trigger更改事件或将事件转换为函数,并在ajax成功后调用它。

一些开发人员使用setinterval way,但我认为这是特殊情况需要的,但只是想提及其他选项