![](/img/trans.png)
[英]jQuery: Using autocomplete to add values to two fields instead of one
[英]Jquery autocomplete two fields based on one field using PHP and MySQL
我在MySQL數據庫中有一個表,其中包含以下幾列:名稱,地址,職業,電話號碼和序列號。 在我的html表單中,除其他字段外,我還有用於輸入名稱,電話號碼和序列號的文本字段。 如何使用jQuery自動完成功能和PHP / MySQL使用“序列號”字段填充“名稱”和“電話號碼”字段? 我已經設法在一個輸入字段上設置自動填充,但是我不知道如何使用具有自動完成功能的一個字段將其設置為填充其他兩個字段。 謝謝
這些是領域
<input type="text" name="name" id="autocomplete" />
<input type="text" name="phone_number" id="autocomplete" />
<input type="text" name="serial_number" id="autocomplete" />
這是我的php腳本,用於從db獲取字符串
<?php
$dbhost = 'YOUR_SERVER';
$dbuser = 'YOUR_USERNAME';
$dbpass = 'YOUR_PASSWORD';
$dbname = 'YOUR_DATABASE_NAME';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname);
$return_arr = array();
if ($conn)
{
$fetch = mysql_query("SELECT name, phone_number, serial_number FROM users");
while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) {
$row_array['value'] = $row['name'] . " " . $row['phone_number'] " . $row['serial_number'] ";
array_push($return_arr,$row_array);
}
}
mysql_close($conn);
echo json_encode($return_arr);
?>
您需要做的是,當序列號的自動完成完成時,運行一個ajax調用以根據序列號檢索名稱和電話號碼,然后填充這些字段,如下所示:
$('input[name=serial_number]').autocomplete({
onComplete: function (val) {
$.getJSON('/url-to-fetch-name-and-phone.php?serial_number=' + val, function (data) {
$('input[name=name]').val(data.name);
$('input[name=tel]').val(data.tel);
});
}
});
顯然,您需要根據設置更改一些函數和變量名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.