jqgrid 动态添加数据项

    技术2026-05-14  8

    动态修改 jqgrid 提交的参数 

     

    具体的说明可以参考 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:post_data_module  

     

    这里举个例子:当你需要根据用户的输入过滤 jqgrid 的显示数据,可以这样实现,

     

    Js代码 userName = $( '#userName' ).val( );   // input 的值      userCode =  $( '#userCode' ).val( );   // input 的值      jQuery('#grid_user').appendPostData( { userName :userName , userCode :userCode }       这 样,刷新 grid 数据时,提交到服务器的数据将包含这 userName 和 userCode两项。   userName = $( '#userName' ).val( ); // input 的值 userCode = $( '#userCode' ).val( ); // input 的值 jQuery('#grid_user').appendPostData( { userName :userName , userCode :userCode } 这样,刷新 grid 数据时,提交到服务器的数据将包含这 userName 和 userCode两项。

     

    Editing form 提交时,动态添加数据项 

     

    在以 Form Editing 方式添加或修改数据,如何在提交时动态的添加或修改一些项目呢?

     

    一个典型的例子是添加文章记录时,在提交的数据中添加当前时间这个项目。

     

    参考 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing 可以知道:

     

    在表单提交前,将触发事件 beforeSubmit , 所以我们可以在这个事件里做些事情。

     

    Js代码 // 提交前   fn_beforeSubmit = function( postdata, formid ) {        // 添加或修改 postdata 项目值                  postdata[ 'uploadDate' ] = new Date().format("yyyy/MM/dd") ;         postdata[ 'uploadTime' ] = new Date().format("hh:mm:ss") ;                                                    return[true,''];   // 提交                              };      // 添加记录 options    Options_add = {           width:500,           height:290,           reloadAfterSubmit:true,           jqModal:true,            beforeSubmit:       fn_beforeSubmit,           ......   }      // 配置 jqgrid nav   jQuery( pGridId ).jqGrid('navGrid',pPageId, {edit:true,add:true,del:true,search:false,refresh:true,view:true,addtext:'添加',edittext:' 修改',deltext:'删除' }, //options            {height:290,reloadAfterSubmit:false, jqModal:true, closeOnEscape:true, bottominfo:"标记有*的字段不能为空"}, // edit options            Options_add, // add options            {reloadAfterSubmit:false,jqModal:true, closeOnEscape:true }, // del options            {closeOnEscape:true}, // search options            {height:250,jqModal:false,closeOnEscape:true// view options        );    // 提交前 fn_beforeSubmit = function( postdata, formid ) { // 添加或修改 postdata 项目值 postdata[ 'uploadDate' ] = new Date().format("yyyy/MM/dd") ; postdata[ 'uploadTime' ] = new Date().format("hh:mm:ss") ; return[true,'']; // 提交 }; // 添加记录 options Options_add = { width:500, height:290, reloadAfterSubmit:true, jqModal:true, beforeSubmit: fn_beforeSubmit, ...... } // 配置 jqgrid nav jQuery( pGridId ).jqGrid('navGrid',pPageId, {edit:true,add:true,del:true,search:false,refresh:true,view:true,addtext:'添加',edittext:'修改',deltext:'删除' }, //options {height:290,reloadAfterSubmit:false, jqModal:true, closeOnEscape:true, bottominfo:"标记有*的字段不能为空"}, // edit options Options_add, // add options {reloadAfterSubmit:false,jqModal:true, closeOnEscape:true }, // del options {closeOnEscape:true}, // search options {height:250,jqModal:false,closeOnEscape:true} // view options );

     

    最新回复(0)