我在表单中使用自动完成功能。我从表容器中获取vessel_name。但是我需要表vessel中的vessel_name和vessel_id。我需要vessel_id将数据插入另一个表装置中。
<input type="text" id="vessel_name" placeholder="Vessel Name" class="form-control" name="nam">
<input type="hidden" id="vessel_id" class="form-control" name="id">
<script>
$(function() {
var availableTags = <?php include('vname.php'); ?>;
$("#vessel_name").autocomplete({
source: availableTags,
autoFocus:true,
minLength:2
});
});
</script>
vname.php
<?php
$connection = mysqli_connect("localhost","root","","vasishipping")or die("Error " . mysqli_error($connection));
//fetch vessel names from the vessel table
$sql = "select * from vessel";
$result = mysqli_query($connection, $sql) or die("Error " .mysqli_error($connection));
$dname_list = array();
while($row = mysqli_fetch_array($result))
{
$vname_list[] = $row['vessel_name'];
$vname_list[] = $row['vessel_id'];
}
echo json_encode($vname_list);
?>
我想你availableTags
是一维数组。
您可以使用键和值将该数组转换为对象数组:
var availableTags = [
{ key: "1", value: "ActionScript" },
{ key: "2", value: "AppleScript" },
{ key: "3", value: "Asp" }
];
并检索将选择功能添加到自动完成选项的值:
$("#vessel_name").autocomplete({
source: availableTags,
autoFocus:true,
minLength:2,
select: function(event, ui) {
$("#vessel_name").val(ui.item.value);
$("#vessel_id").val(ui.item.key);
}
});
这是检索两个值的示例
编辑:添加PHP更改以availableTags
正确格式检索数组
应该更改PHP部分,以提供示例格式的JSON。
只需将其添加到您的while循环中即可:
$vname = $row['vessel_name'];
$vid = $row['vessel_id'];
$variable[] = array( 'key' => "$vid", 'value' => "$vname" )
并返回$variable
到json_encode
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句