Javascript Ajax-在选择“自动完成”时更改禁用文本框的值
我已经在一个文本框中编写了自动完成的代码。我的问题是如何根据自动完成选择为禁用的文本框赋值。我有两个实体产品名称和产品价格。产品名称在自动完成上。产品价格应根据自动完成选择动态变化Javascript Ajax-在选择“自动完成”时更改禁用文本框的值,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我已经在一个文本框中编写了自动完成的代码。我的问题是如何根据自动完成选择为禁用的文本框赋值。我有两个实体产品名称和产品价格。产品名称在自动完成上。产品价格应根据自动完成选择动态变化 <tr> <td class="header" align="left" valign="top"> Enter the product<span class="required">*</span> </td> <td>
<tr>
<td class="header" align="left" valign="top">
Enter the product<span class="required">*</span>
</td>
<td>
<input class="text" type="text" name="product" id="tag" value="" align="left" size="75" maxlength="80">
</td>
<td class="header" align="left" valign="top">
price
</td><td>
<input class="text" disabled type="text" name="price" value="" align="left" size="75" maxlength="80">
</td>
</tr>
Jquery Autocomplete Autocomplete.php会回显我的产品的值,比如xyz abc def
<script>
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
});
});
</script>
我是否应该将autocomplete.php作为xyz 100 abc 212 def 200回显?
非常感谢您的帮助您需要使用选择功能
$("#tag").autocomplete("autocomplete.php", {
source: "your link to the json feed here",
selectFirst: true
select: function( event, ui ) {
$( "#element_needs_editing" ).val(ui.item.value);
return false;
}
});
此外,还需要编辑autocomplete.php的json格式。使用值字段,它可能会保存文本、id或其他内容。使用该数组,可以将多个变量发送到首页。
最好的方法是将结果加载到一个数组中,并使用json_encode$array将其输出
您的搜索输出需要是json格式。实现这一点的最佳方法是将所有搜索结果值加载到一个数组中,并通过json_encode发送
<?php
//A simple array
$data = array();
$data[0]['value'] = 1;
$data[0]['item_code'] = "A001";
$data[0]['price'] = 15;
$data[1]['value'] = 2;
$data[1]['item_code'] = "A002";
$data[1]['price'] = 20;
echo json_encode($data);
?>
现在,如果您想引用项目代码,只需引用
$( "#element_with_item_code" ).val(ui.item.item_code);
或价格
$( "#element_with_price" ).val(ui.item.price);
试试这样的
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true,
select: function( event, ui ) {
if(ui.item){
document.getElementsByName('price')[0].value = ui.item.value
}
}
});
})
我对json和ajax非常陌生。如果你能分享一些与这个qn相关的例子,我会很高兴的。看看。它有一个我相信你将需要的演示。是的,我自己完成了这个自动完成。但问题是还有另一个禁用的price文本框,它会根据所选产品动态更改其值。这正是我要找的。我想知道如何从autocomplete.php动态地为项目分配值。。换句话说,我如何从javascript调用autocomplete.php来为项目[]赋值。这可以解决我的全部问题。
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true,
select: function( event, ui ) {
if(ui.item){
document.getElementsByName('price')[0].value = ui.item.value
}
}
});
})