我有一个jqgrid和一个表单。刷新网格时,我试图将表单的值发送到服务器端处理程序。为了测试,我只在表单中使用一个变量。 Firebug显示jqgrid正在传递字段名称,但无论选择什么,该值始终为null。
根据jqgrid文档,我应该使用postData变量来处理它:
postData:{POINIT:jQuery('#POINIT')。val()}
我还测试了这个,以确保调用jQuery以使值在页面的其他部分上起作用 - 只是在刷新网格时不会。
以下是相关代码:
jQuery(document).ready(funcion(){
jQuery("#list").jqGrid({
url:'poquery.php',
datatype: 'json',
mtype: 'POST',
colNames:['PO Number ','Date','Vendor','Dept','Buyer','Terms'],
colModel :[
{name:'PONUMB', index:'PONUMB', width:65},
{name:'PODATE', index:'PODATE', width:70},
{name:'POVEND', index:'POVEND', width:70},
{name:'POIDPT', index:'POIDPT', width:70},
{name:'POINIT', index:'POINIT', width:70},
{name:'TERMS', index:'TERMS', width:70},
],
postData: {POINIT : jQuery('#POINIT').val()},
pager: '#pager',
rowNum:10,
rowList:[10,20,30],
sortname: 'PONUMB',
sortorder: 'desc',
viewrecords: true,
caption: 'Purchase orders'
}).navGrid('#gridpager',{view:false,edit:false,add:false, del:false},
{}, // use default settings for edit
{}, // use default settings for add
{}, // delete instead that del:false we need this
{multipleSearch : true}, // enable the advanced searching
{closeOnEscape:true}
);
});
非常感谢任何帮助。
答案 0 :(得分:7)
我对这个回复迟到了,但诀窍是使用一个函数:
postData:{POINIT:function(){return $('#POINIT')。val(); }}