正如您在这里所看到的,该函数正在将 html 加载到我文件中的表单类中。 (quest[q) 定位正确的 html 模板以从未显示的模板数组中加载。
正在加载的 html 有一个 id 为 p 的输入。正如您所看到的,我正在尝试在加载后设置输入的值。
但是我无法让它工作。
正确的 html 已加载,但该值未加载。我必须调用该函数两次(双击)才能让 jquery 更改值。
任何关于如何让它发挥作用的建议都会很棒。我有多个具有唯一值的模板,我希望动态重新加载它们。将来,将在函数中传递一个 id 以获得与正在加载的模板关联的正确编号。目前我只是在测试。
谢谢
这是加载到 .form 上的 html。请参阅 ID #p。
<div class="question animated slideInUp">
<h2>Enter Your Estimated Yearly Income</h2>
<form onsubmit="Obj(this.income.name,this.income.value)">
<input min=1 type="number" id="p" name="income" value="" required>
<input type="submit" value="Submit"> </form>
</div>
function redo(q) {
q = Number(q);
if (q + 1 != iterator) {
iterator++;
$('.form').load(quest[q])
$('#p').val(data.income);
}
}
最佳答案
在 .load 中,您可以使用在 html 渲染后调用的回调函数。这可以将正确的值渲染到输入中。
不幸的是,我脑子里放屁了,但现在效果很好了!
function redo(q) {
console.log(data);
q = Number(q);
console.log(q);
if (q + 1 != iterator) {
iterator++;
return $('.form').load(quest[q],function(){
$('#p').val(data.income);
})
}
}
关于javascript - jQuery 输入值在 html 渲染后不会立即更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45872472/