gpt4 book ai didi

jquery - JQuery 中附加字段的自动完成

转载 作者:行者123 更新时间:2023-12-01 06:42:38 26 4
gpt4 key购买 nike

我正在使用 JQuery 通过单击链接来创建其他输入字段。目前,我实现了一个自动完成插件,对于在页面加载时创建的字段效果很好。当用户添加新字段时,自动完成功能不适用于这些特定字段。我只是想知道是否有人可以帮助我弄清楚如何让它发挥作用。

<script type="text/javascript">
$(document).ready(function() {
$('#addingredient').click(function() {
$('<li />').append('<input type="text" class="ingredient" name="ingredient[]" id="ingredient[]" size="60" />')
.append('<input type="text" class="amount" name="amount[]" id="amount[]" size="5" />')
.append('<select class="unit" name="unit[]" id="unit[]"><?=$units ?></select>')
.appendTo('#ingredients')
.hide()
.fadeIn('normal');
});
</script>

<script>
$(document).ready(function(){
var data = "http://mywebsite.com/ingredients.php";
$(".ingredient").autocomplete(data);
});
</script>


<ul id="ingredients">
<li><input type="text" class="ingredient" name="ingredient[]" id="ingredient[]" size="60" /><input type="text" class="amount" name="amount[]" id="amount[]" size="5" /><select class="unit" name="unit[]" id="unit[]"><?=$units ?></select></li>
<li><input type="text" class="ingredient" name="ingredient[]" id="ingredient[]" size="60" /><input type="text" class="amount" name="amount[]" id="amount[]" size="5" /><select class="unit" name="unit[]" id="unit[]"><?=$units ?></select></li>
<li><input type="text" class="ingredient" name="ingredient[]" id="ingredient[]" size="60" /><input type="text" class="amount" name="amount[]" id="amount[]" size="5" /><select class="unit" name="unit[]" id="unit[]"><?=$units ?></select></li>
</ul>

最佳答案

将新元素添加到 DOM 后,您需要重新运行自动完成功能。下面的代码将等待元素淡入,然后在具有正确类的新元素上设置自动完成功能。

<script type="text/javascript">
var data = "http://mywebsite.com/ingredients.php";
$(document).ready(function() {
$('#addingredient').click(function() {
$('<li />').append('<input type="text" class="ingredient" name="ingredient[]" id="ingredient[]" size="60" />')
.append('<input type="text" class="amount" name="amount[]" id="amount[]" size="5" />')
.append('<select class="unit" name="unit[]" id="unit[]"><?=$units ?></select>')
.appendTo('#ingredients')
.hide()
.fadeIn('normal', function() {
$(this).find('.ingredient').autocomplete(data);
});
});
$(".ingredient").autocomplete(data);
});
</script>

关于jquery - JQuery 中附加字段的自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/786117/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com