【问题标题】:beforeShowForm jqgrid in dynamic form动态形式的beforeShowForm jqgrid
【发布时间】:2013-05-07 21:57:19
【问题描述】:
 {edit:true,add:true,del:false,search:false,refresh:true,view:false} ,
 // edit option
 {  
     beforeShowForm: function(formID) {    
         //alert("TESTALERT");
         jQuery('#tr_b_summe_cvvp', formID).show();
         jQuery('#tr_b_summe_lsv', formID).show(); 
         jQuery('#buchung', formID).click(function() {
             var index = $(this)[0].selectedIndex;
             if (index == 1)      {   jQuery('#tr_b_summe_lsv',  formID).hide();  }
             else if (index == 2) {   jQuery('#tr_b_summe_cvvp', formID).hide();  }
             else if (index == 3) {   jQuery('#tr_b_summe_cvvp', formID).show();  }
             else if (index == 4) {   jQuery('#tr_b_summe_lsv',  formID).show();  }
         });                            
     }
}, 

我想用 jqgrid 制作一个“动态”表单。当使用 alert() 时,表单运行良好, 如果不是,则行的动态更改仅在第二次尝试中起作用

【问题讨论】:

    标签: jqgrid


    【解决方案1】:

    我建议您使用recreateForm:true 选项。在我看来,该设置应该是 jqGrid 表单编辑的默认选项。

    问题是使用默认设置recreateForm:false jqGrid只创建一次表单,所以只有第一次调用函数beforeShowForm。此外,如果您同时使用“添加”和“编辑”表单只会为两个对话框创建一个表单。然后对话框将仅隐藏或显示。它会产生一些非常奇怪的效果。所以我强烈建议大家始终使用recreateForm:true 选项。

    【讨论】:

    • 由于您的建议,我默认为 recreateform - true。是否仍然在 dataUrl 中缓存信息以避免每次编辑行时都必须重新加载该数据?
    • @leora:我在here的问题上发布了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-17
    • 2011-05-25
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    • 2021-02-16
    相关资源
    最近更新 更多