【发布时间】:2011-06-28 08:21:33
【问题描述】:
我遵循了一个关于如何创建一个查找字段的教程,该字段在 MySQL 数据库中动态搜索一个表 - 目的是通过邮政编码处理联系人查找。我的搜索工作正常,值(在页面上)被插入到字段中,但是我需要将选择的记录的 id 放入输入字段的 value="idhere" 参数中。我已经添加了下面的 PHP 和 HTML,任何人都可以查看并帮助解决我的问题。
Javascript 和 CSS
<script type="text/javascript">
function getSuggestions(value) {
if(value != ""){
$.post("lookup.php", {contactPart:value}, function(data) {
$("#suggestions").html(data);
runCSS();
});
}else{
removeSuggestions();
}
}
function removeSuggestions() {
$("#suggestions").html("");
stopCSS();
}
function addText(value) {
$("#inputContact").val(value);
$("#inputContact").val() {
$(this).val()
}
}
function runCSS() {
$("#suggestions").css({
'border' : 'solid',
'border-width' : '1px'
});
}
function stopCSS() {
$("#suggestions").css({
'border' : '',
'border-width' : ''
});
}
</script>
<style type="text/css">
#suggestions {
text-align: left;
padding-left: 3px;
}
#link:hover {
background-color: #f0f0f0;
cursor: default;
}
</style>
HTML
<input type="text" name="userA" id="inputContact" onblur="setTimeout('removeSuggestions()', 200)" onkeyup="getSuggestions(this.value);" value="idhere" />
<div id="suggestions"></div>
PHP
<?php
mysql_connect("127.0.0.1", "root", "root")or die(mysql_error());
mysql_select_db("gEntry")or die(mysql_error());
$contactPart = mysql_real_escape_string(addslashes($_POST['contactPart']));
$result = mysql_query("SELECT id, title, firstname, lastname, postcode FROM contact WHERE postcode LIKE '%".$contactPart."%'")or die (mysql_error());
while ($row = mysql_fetch_assoc($result)) {
echo "<div id='link' onClick='addText(\"".$row['id']. ' - ' .$row['title']. ' ' .$row['firstname']. ' '.$row['lastname']."\");'>" . $row['id'] . ' - ' . $row['title'] . ' ' . $row['firstname'] . ' ' . $row['lastname'] . ' - ' . $row['postcode'] . "</div>";
}
?>
我使用标准 mysql 语法,因为 mysqli 无法在我的服务器上运行。
提前致谢
【问题讨论】:
-
什么“id here”我在你的代码中没有看到
-
@mplungjan - 我更新了代码抱歉
标签: php javascript jquery mysql html