jQuery更改页面加载后创建的输入的值

jquery change value of input created after page load

本文关键字:创建 输入 加载 jQuery      更新时间:2023-09-26

我只需要更改在单击按钮时创建的输入字段的值。我已经尝试了以下内容,但它给了我未定义的错误,因为加载页面时元素不存在。有什么想法吗?

$('#test').val("test");

我将下面的代码用于点击事件,但我不知道如何对上面的代码做同样的事情

$('body').on("click", ".btnx", function() {
    //do something
});
$('#test').click(function(){
    //code here
});
$('#test').empty();
$('#test').append('test');

当您想要设置超出控件的输入的值时,没有类似委托事件的任何内容,因为没有要等待的事件。

您可以等待元素存在,并在它存在时设置值:

var handle = window.setInterval(function(){
  var i = $('#test');
  if (i.length) {
    i.val('test');
    window.clearInterval(handle);
  }
}, 100);

间隔 100 表示它每秒检查 10 次,因此在创建元素后,值可能会长达 1/10 秒。您可以根据需要设置值的速度以及允许的开销来调整该值。