jqGrid根据先前的选择填充选择选项

时间:2012-07-11 15:49:29

标签: javascript jquery jqgrid

下面是我用来创建jqGrid的代码片段 -

$("#list").jqGrid({
    url:'products.php?storeId=<?php echo $_SESSION["valid_store"]; ?>',
    datatype: 'xml',
    mtype: 'GET',
    colNames:['Product Id','Product Description','Department','Category','Price','Sale Price','Quantity','Extended Description','Image'],
    colModel :[ 
      {name:'ProductId', index:'ProductId', width:20}, 
      {name:'product_name', index:'product_name', width:50, editable:true, edittype:'text', search:true, stype:'text'},
      {name:'DepartmentName', index:'DepartmentName', width:40,sortable: false, editable: true, edittype: "select"},
      {name:'CategoryName', index:'CategoryName', width:40,sortable:false, editable:true, edittype:'select'},

我在使用以下内容加载网格时动态填充“DepartmentName” -

var departments = $.ajax({
        url: "get_departments.php?storeId=<?php echo $_SESSION["valid_store"]; ?>",
        async: false,
        success:function(data, result){
            if(!result){
                alert("Failure to retrieve the Departments");
            }
        }

loadComplete:function(){
        $("#list").setColProp('DepartmentName', { editoptions: { value: departments} });
    },

基本上我将大量“部门”分配为JSON格式,当网格加载完毕后,所有这些部门都会填充“DepartmentName”。一切正常。

我在做什么/理解方面有困难。现在我有这些值,取决于我从Select中选择哪个“部门”,只填充“CategoryName”,只有“类别”被所述“部门”引用,数据之间的关系已经是在MySQL

中设置

由于

1 个答案:

答案 0 :(得分:0)

使用另一个ajax函数。只需发送选择列表的值并获取与该选定值关联的sql值。然后返回并在下一个SELECT项中仅显示这些选项。像这样:

$.ajax({
   url:blah.html,
   data:{'something':'your select value'},
   success:function(data){$('#yourNextSelectItem').html(data)}
});