【发布时间】:2013-09-26 15:24:21
【问题描述】:
关于我的查询,我在 stackoverflow 上经历了许多问题,但无法将它们应用于我的问题。
因此,我在这里提供我一直在使用的文件。
我可以成功地使用带有静态文本框的自动完成功能。我从数据库中获取数据。但是,我无法弄清楚如何为动态生成的文本框做到这一点。我希望使用数据库中的数据为动态生成的文本框实现自动完成功能
这是我的文件:
index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Auto Complete Input box</title>
<link rel="stylesheet" type="text/css" href="jquery.autocomplete.css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.autocomplete.js"></script>
<script>
$(document).ready(function(){
$("#name").autocomplete("autocomplete.php", {
selectFirst: true
});
});
</script>
<script>
function addForm(){
$("#forms").append(
"<form><input type ='text' name='winner' id='winner'><br/></form>"
);
}
</script>
</head>
<body>
<label>Name:</label>
<input name="name" type="text" id="name" size="20"/>
<input type="button" name="addmore" id="addmore" value="Add More Winners" onclick="addForm();"/>
<div id = "dyanamic"></div>
</body>
</html>
自动完成.php
<?php
require 'config.php';
$q=$_GET['q'];
$my_data=mysql_real_escape_string($q);
//$mysqli=mysql_connect('localhost','root','','emp_db') or die("Database Error");
$sql="SELECT name FROM employee WHERE name LIKE '%$my_data%' ORDER BY name";
$result = mysql_query($sql) or die(mysqli_error());
if($result)
{
while($row=mysql_fetch_array($result))
{
echo $row['name']."\n";
}
}
?>
【问题讨论】:
-
你在哪里添加文本输入?
-
@tymeJV:我已经更新了我的代码以显示我如何添加文本框..
-
使用 jQuery 将新元素添加到 DOM 时,为新文本字段指定一个 ID,然后使用相同的方法 ($("#element_id").autocomplete...)。有什么问题?
-
@Sébastien:我已经更新了我的代码以显示我如何添加文本框。我不完全知道如何对动态文本框使用自动完成功能。此外,我想将 uder 在这些框中添加的所有数据保存到数据库中。我很困惑
标签: javascript php jquery ajax input