我这里有一个下拉选择和自动完成功能。我需要做的是将选定的下拉值传递给autocomplete.php以在我的查询中使用。文本框值应取决于下拉列表中的值。如果选定的值是耗材,则所有耗材仅在文本框中值(如铅笔或圆珠笔)。
我在Dynamic Dropdown中使用了这个Ajax。我如何使用它来传递autocomplete.php中的值?
注意:此自动填充功能未连接此Ajax。如何使用此ajax将值传递给我的autocomplete.php查询。
<script type="text/javascript">
$('#main').change(function(){
$.ajax({
url : 'getajax.php',
data :{mainlist_id : $(this).val()},
dataType:'html',
type:'POST',
success:function(data){
$('#sub').html(data);
}
});
});
</script>
Ajax.php
<script type="text/javascript" src="jquery.autocomplete.js"></script>
<script>
$(document).ready(function(){
$("#tag").autocomplete("autocomplete.php", {
selectFirst: true
});
});
</script>
Drop1
<?php
$combo = $mysqli->query("SELECT * FROM category GROUP BY cat_code ORDER BY id");
$option = '';
while($row = $combo->fetch_assoc())
{
$option .= '<option value = "'.$row['cat_code'].'">'.$row['category'].'</option>';
}
?>
<select id="main" name="main">
<option value="" disabled="disabled" selected="selected">Choose</option>
<?php echo $option; ?>
</select>
Auto Complete <input id="tag" type="text">
Autocomplete.php
<?php
$mysqli = new mysqli("localhost", "root", "", "2015") or die("Database Error");
$auto = $mysqli->real_escape_string($_GET["q"]);
$sql = $mysqli->query("SELECT * FROM code WHERE item LIKE '%$auto%' GROUP BY id ORDER BY item" );
if($sql)
{
while($row=mysqli_fetch_array($sql))
{
echo $row['item']."\n";
}
}
?>
答案 0 :(得分:0)
$('#sub').html(data);
应为$('#tag').html(data);
答案 1 :(得分:0)
在放置此
时,您的#sub
代码中尚未定义html
元素
$('#sub').html(data);
之后,当您使用getajax.php
时,您的页面名称必须相同,而不是您定义了我们