我使用ajax,jquery创建了搜索。我自动过滤类别表中的类别名称和同一自动过滤器框中的内容表中的类别项目。
我想要的是如果自动过滤器选择值是类别,则值应分配给category_id隐藏字段,如果自动过滤器选择值是项目名称,则忽略分配进行搜索。
请告诉我如何进行此操作。
JSON
$query="SELECT b.title,b.id
FROM sltdb_cddir_categories b
WHERE b.title like '%".$searchc."%' AND b.parent_id BETWEEN 84 AND 107 AND b.level=3
UNION
SELECT a.title, a.id
FROM sltdb_cddir_content a join
sltdb_cddir_categories b
on a.categories_id = b.id
WHERE a.title like '%".$searchc."%'AND b.parent_id BETWEEN 84 AND 107 AND b.level=3
";
$db -> setQuery($query);
// Load the results as a list of associated arrays.
$results = $db -> loadAssocList();
$json=array();
foreach ($results as $json_result) {
$json[] = array(
'value' => $json_result["id"],
'label' => $json_result["title"]
);
}
echo json_encode($json);
jquery和表单
jQuery(function(){
jQuery("#searchc").autocomplete({
source:'product.php',
delay: 300 ,
minLength:1,
select: function(event, ui) {
jQuery('#categories_id').val(ui.item.value);
}
});
});
姓名
<td><p>Location</p>
<input type="text" id="addressc" name="address" /></td>
<input type="hidden" id="categories_id" name="categories_id" value="" />
答案 0 :(得分:0)
试
$("#searchc").change(function(){
if($(this).val()=="category")
{
$("#category_id").val($(this).val());
}
});
修改强>
jQuery(function () {
jQuery("#searchc").autocomplete({
source: 'product.php',
delay: 300,
minLength: 1,
select: function (event, ui) {
if(ui.item.value=="category")
{
jQuery('#categories_id').val("json here");
}
}
});
});