Php 动态文本框和自动完成

Php 动态文本框和自动完成,php,jquery,autocomplete,Php,Jquery,Autocomplete,我想在我的动态文本框中自动完成。我已经试过了各种方法,但都不管用。 以下是我的autocomplete.php代码: <?php $connection = mysqli_connect("localhost","root","","rbmv3") or die("Error " . mysqli_error($connection)); //fetch department names from the department table $sql = "select country_n

我想在我的动态文本框中自动完成。我已经试过了各种方法,但都不管用。 以下是我的autocomplete.php代码:

<?php
$connection = mysqli_connect("localhost","root","","rbmv3") or die("Error " . mysqli_error($connection));

//fetch department names from the department table
$sql = "select country_name from countries";
$result = mysqli_query($connection, $sql) or die("Error " . mysqli_error($connection));

$dname_list = array();
while($row = mysqli_fetch_array($result))
{
    $dname_list[] = $row['country_name'];
}
echo json_encode($dname_list);?>
<label>Department Name</label></br>
<button type="button"  onclick="coba()"> Tes </button> <br>
<div id="add">
<input class="department_name" type="text" size="50" />
</div>

<script type="text/javascript">
$(function() {
var availableTags = <?php include('autocomplete.php'); ?>;
$(".department_name").autocomplete({
    source: availableTags,
    autoFocus:true
});
});
</script>

<script type="text/javascript">
    function coba(){
            document.getElementById("add").innerHTML +=
   " <inputclass='department_name' type='text' size='50' />";
    }
</script>

下面是我的index.php代码:

<?php
$connection = mysqli_connect("localhost","root","","rbmv3") or die("Error " . mysqli_error($connection));

//fetch department names from the department table
$sql = "select country_name from countries";
$result = mysqli_query($connection, $sql) or die("Error " . mysqli_error($connection));

$dname_list = array();
while($row = mysqli_fetch_array($result))
{
    $dname_list[] = $row['country_name'];
}
echo json_encode($dname_list);?>
<label>Department Name</label></br>
<button type="button"  onclick="coba()"> Tes </button> <br>
<div id="add">
<input class="department_name" type="text" size="50" />
</div>

<script type="text/javascript">
$(function() {
var availableTags = <?php include('autocomplete.php'); ?>;
$(".department_name").autocomplete({
    source: availableTags,
    autoFocus:true
});
});
</script>

<script type="text/javascript">
    function coba(){
            document.getElementById("add").innerHTML +=
   " <inputclass='department_name' type='text' size='50' />";
    }
</script>
部门名称
Tes
$(函数(){ var availableTags=; $(“.department\u name”).autocomplete({ 资料来源:availableTags, 自动对焦:正确 }); }); 函数coba(){ document.getElementById(“add”).innerHTML+= " "; }

当我在一个或多个文本框中尝试自动完成代码而不动态添加时,效果很好。有人能帮我解决这个问题吗?

您必须使用
destroy()
删除当前自动完成的绑定,然后再次调用
autoComplete()

函数coba(){
document.getElementById(“add”).innerHTML+=
" ";
$(“.department_name”)。自动完成(“销毁”);
$(“.department\u name”).autocomplete({
资料来源:availableTags,
自动对焦:正确
});
}

您必须使用
destroy()
删除自动完成的当前绑定,然后再次调用
autoComplete()

函数coba(){
document.getElementById(“add”).innerHTML+=
" ";
$(“.department_name”)。自动完成(“销毁”);
$(“.department\u name”).autocomplete({
资料来源:availableTags,
自动对焦:正确
});
}

您可能还需要对新添加的元素调用
autoComplete()
函数,以便绑定插件功能。您能帮我重写索引代码吗?感谢您的帮助:)如何在新添加的元素中调用autoComplete()函数@developer107您可能还需要对新添加的元素调用
autoComplete()
函数,以便绑定插件功能。您能帮我重写索引代码吗?感谢您的帮助:)如何在新添加的元素中调用autoComplete()函数@developer107即使我在上一个文本框中使用destroy()我的自动完成功能,是否仍在工作?感谢您的帮助:)@JulianaSucahya您是否使用了
.autocomplete(“destroy”)?请参阅-@JulianaSucahya,在您使用
destroy()
之后,您将再次绑定。所以它会起作用的,我还没试过。我试过之后再告诉你们。谢谢:)@JulianaSucahya你能复制这个问题并提供一个演示吗?即使我在以前的文本框中使用destroy()我的自动完成功能,它是否仍然有效?感谢您的帮助:)@JulianaSucahya您是否使用了
.autocomplete(“destroy”)?请参阅-@JulianaSucahya,在您使用
destroy()
之后,您将再次绑定。所以它会起作用的,我还没试过。我试过之后再告诉你们。谢谢:)@JulianaSucahya你能复制这个问题并提供一个演示吗?