【发布时间】:2012-11-13 10:28:11
【问题描述】:
我正在使用 4 个选择框搜索产品,使用 jQuery 我使用 ajax 调用填充每个框。这一切都有效,但是我现在想使用预先确定的搜索条件(因此它已经知道要使用哪些选定的选项)来填充。
例如 产品来源(新鲜、冷冻) 如果选择了新鲜,则在下一个选择框中填充取决于此选项的列表。 产品类型(水果...) 产品(苹果...) 颜色(红..) 等等
然后使用所选产品完成库存搜索,因此在这种情况下,它将是 Fresh fruit apples red,它可能给出 id =5。
这很好,但现在我想将产品来源、产品类型、产品、颜色传递到搜索中,它会填充选择框和其他选项。 我遇到的问题是我使用选择框上的更改事件来触发在加载下一个之前触发的 ajax。
我希望这是有道理的:S
$("#form_model").change(function(){
var val = $(this).val();
if (val != '')
populateStockItems($("#form_cat").val(),$("#form_sup").val(),val);
})
function populateStockItems(proid,suppid,modelid){
var datain ={
'ProdCode':proid,
'SuppCode':suppid,
'Range':modelid
};
getAjax('stockSearch',datain,function(data){
if(data.result=="success"){
var catcbb = $("#form_item");
catcbb.selectmenu('enable');
catcbb.empty();
catcbb.append($('<option></option>').attr("value", '').text(''));
$.each(data[0].items, function () {
catcbb.append($('<option></option>').attr("value", this.itemCode).text(this.itemDescription));
});
if (data[0].items.length ==1)
catcbb.get(0).selectedIndex = 1
catcbb.trigger("change");
}
else
{
}
})
}
编辑- 它可以很好地搜索产品,但我现在需要使用已知产品预填充过滤器,我拥有所有过滤器值。 我想我会一次选择一个并“等待”通过 ajax 填充该框。
【问题讨论】:
-
发布用于进行 ajax 调用的更改处理程序的代码
-
还有 ..re-reading 问题您是否尝试从代码的另一部分加载选择并传入 id 值?不是 100% 清楚意图是什么