gpt4 book ai didi

php - JQUERY自动完成获取id而不是值

转载 作者:行者123 更新时间:2023-11-29 11:04:55 24 4
gpt4 key购买 nike

我有一个 mysql 数据库,我想在其中使用自动完成功能。到目前为止我能够收到查询结果。例如,结果如下:[{"LNAME":"Napoleon","id":"1"}]但我希望在本例中将客户的 id 填写到表单的另一个输入字段中。 (因此,在拿破仑的情况下,我希望将“1”填写到表单的 clienteID 字段中)目前该字段尚未更新。

这是 HTML 部分:

    <script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.autocomplete.js"></script>

<script>
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
minLength: 3,
select: function(event, ui) {
$('#clienteId').val(ui.item.id);
},
});
});
</script>

<form name='form_update_details' id='form_update_details' method='post' action=''>
<input type='text' name='clienteName' id='tag'>
<input type='text' name='clienteId' id='clienteId'>
</form>

然后是 php 部分:

<?php

include("include/db.php");

$q=$_GET['q'];
$my_data=mysql_real_escape_string($q);

$sql="SELECT ID, CONTACTS_LNAME, CONTACTS_FNAME FROM CRM_CONTACTS WHERE CONTACTS_LNAME LIKE '%$my_data%' or CONTACTS_FNAME LIKE '%$my_data%' ORDER BY CONTACTS_LNAME";
$result = mysqli_query($coni,$sql) or die(mysqli_error());

if($result)
{
while($row=mysqli_fetch_array($result))
{
$data[] = array(
'LNAME' => $row['CONTACTS_LNAME'],
'id' => $row['ID']
);
}
echo json_encode($data);
flush();
}
?>

最佳答案

尝试使用示例数据:使用 labelvalue作为键而不是 LNAMEid 。使用event.preventDefault();设置label in #tag字段否则为 default it will set the value .

var data = [
{
value: "1",
label: "jQuery"
},
{
value: "2",
label: "jQuery UI"
},
{
value: "3",
label: "Sizzle JS"
}
];

$(document).ready(function(){
$("#tag").autocomplete( {
source: data,
minLength: 3,
select: function(event, ui) {
event.preventDefault();
$("#tag").val(ui.item.label);
$('#clienteId').val(ui.item.value);
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<form name='form_update_details' id='form_update_details' method='post' action=''>
<input type='text' name='clienteName' id='tag'>
<input type='text' name='clienteId' id='clienteId'>
</form>

关于php - JQUERY自动完成获取id而不是值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41567908/

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