jqGrid - 当加载一次为 true 时,子网格不起作用

发布于 2024-09-12 08:22:43 字数 184 浏览 16 评论 0原文

我在使用子网格时遇到问题。我想使用 loadoce 的好功能(本地搜索等)。我也想使用子网格。 但将它们放在一起是行不通的。我不知道这是一个错误还是我错过了一些东西。

如果我设置 loadonce:false,子网格就可以工作。

我尝试了 3.7.1 和 3.7.2

或者我应该一次只使用一个? 非常感谢!

I have a problem to use subgrid. I want to use the nice feature of loadoce(local search etc.). And I also want to use subgrid.
But it doen't work to put them together. I don't know if it's a bug or I miss some thing.

If I set loadonce:false, the subgrid works.

I tried both 3.7.1 and 3.7.2

Or should I only use one at a time?
Many thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

池予 2024-09-19 08:22:43

这在 JQGrid 3.8 中是可能的,至少在 - 和 4.0 中是可能的(我没有尝试过 JQGrid < 3.8)。

如果您想使用 loadonce:true,请务必设置您的 subGridType,因为这将覆盖 datatype:X 的更改>(其中 X 是您设置的值)到 datatype:local(对于您的子网格)。您可能知道必须设置 editUrl:clientArray 才能使本地搜索正常工作。

我正在使用您想要的设置的网格示例:

   jQuery("#MyGrid").jqGrid({
        colNames:['Customer','Value.','Customer ID']
        ,colModel:[
            {name:'customer_name',index:'customer_name',sortable:true},
            {name:'value',index:'value',sortable:true,align:'right',width:'100px',formatter:'number',formatoptions:{decimalSeparator:',',thousandsSeparator:'.',decimalPlaces:1,defaultValue:'0.00'}},
            {name:'customer_id',index:'customer_id',hidden:true}]
        ,sortname:'customer_id'
        ,caption:'mycap'
        ,datatype:'json'
        ,loadonce:true
        ,rowNum:100
        ,footerrow:true
        ,pager:false
        ,userDataOnFooter:true
        ,sortorder:'asc'
        ,subGrid:true
        ,sortable:true
        ,height:'auto'
        ,viewrecords:true
        ,subgridtype:'json'
        ,url:'?q=1'
        ,editurl:'?q=1&p=1'
        ,autowidth:true
        ,altRows:true
        ,shrinkToFit:true
        ,subGridUrl:'/myurl?q=1&sub=1'
        ,subGridModel:[{name:['Additional Info','Subtotal'],width:[170,60],params:['customer_id']}]
    });

This is possible in JQGrid 3.8, at least - and 4.0 (I have not tried JQGrid < 3.8).

Please be certain to have your subGridType set, if you want to be using loadonce:true, as that'll override the change from datatype:X(where X is what you set it to) to datatype:local(for your subgrid). You probably know you'll have to set editUrl:clientArray for the local searches to work.

An example from a grid where I'm using the settings you want:

   jQuery("#MyGrid").jqGrid({
        colNames:['Customer','Value.','Customer ID']
        ,colModel:[
            {name:'customer_name',index:'customer_name',sortable:true},
            {name:'value',index:'value',sortable:true,align:'right',width:'100px',formatter:'number',formatoptions:{decimalSeparator:',',thousandsSeparator:'.',decimalPlaces:1,defaultValue:'0.00'}},
            {name:'customer_id',index:'customer_id',hidden:true}]
        ,sortname:'customer_id'
        ,caption:'mycap'
        ,datatype:'json'
        ,loadonce:true
        ,rowNum:100
        ,footerrow:true
        ,pager:false
        ,userDataOnFooter:true
        ,sortorder:'asc'
        ,subGrid:true
        ,sortable:true
        ,height:'auto'
        ,viewrecords:true
        ,subgridtype:'json'
        ,url:'?q=1'
        ,editurl:'?q=1&p=1'
        ,autowidth:true
        ,altRows:true
        ,shrinkToFit:true
        ,subGridUrl:'/myurl?q=1&sub=1'
        ,subGridModel:[{name:['Additional Info','Subtotal'],width:[170,60],params:['customer_id']}]
    });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文