的POSTDATA现在我有执行某种逻辑,并产生一个字符串变量的jqGrid函数高于此postData: { search: function() { return $("#search").val(); },},
JavaScript变量成的jqGrid
我然后有jQuery函数。现在,我只是把这个变量和设置搜索元素的值是这样的:
$("#startSearch").click(function() {
$("#search").val(searchVal);
$("#grid").trigger("reloadGrid");
});
这工作,但我跳以不同的方式做到这一点。我只想将我的jQuery函数生成的seachVal变量传递给postdata。
我试过这样,但它不工作POSTDATA:{ search: function() { return searchVal; },},
我收到说没有定义searchVal错误。我确信searchVal变量是全局变量,但它仍然不起作用。
这是可能的还是我只是看着这个错误?
任何帮助将是伟大的。
感谢
UPDATE:
下面是一个剥离下来的网页版本:
<fieldset>
<input type='text' id='search' />
<button type='button' id='startSearch'>Search</button>
</fieldset>
<script type="text/javascript">
$(function(){
$("#startSearch").click(function() {
serchVal = 'transID > "5"';
$("#search").val(serchVal);
$("#grid").trigger("reloadGrid");
});
$("#list").jqGrid({
url:'data.cfc?method=gridData',
datatype: 'json',
mtype: 'POST',
jsonReader : {
root: "rows",
page: "currentpage",
total: "totalpages",
records: "totalrecords",
repeatitems: false,
id: "0",
},
postData: { search: function() { return $("#search").val(); },},
colModel :[
{name:'transid', label:'Trans ID', width:60},
{name:'companyname', label:'Company Name', width:245},
{name:'companycode', label:'Company Code', width:245},
{name:'datasource', label:'Datasource', width:245}
],
pager: '#pager',
rowList:[10,50,100],
rowNum:'10',
height:221,
sortname: 'transid',
sortorder: 'asc',
viewrecords: true,
gridview: true,
caption: 'Get Trans',
altRows: false,
autowidth: true,
forceFit: true,
rownumbers: true,
scroll: false,
sortable: true
});
$("#list").jqGrid('navGrid','#pager',{edit:false,add:false,del:false,search:false,view:true});
});
</script>
<table id="grid"></table>
<div id="pager"></div>
为了理解你的问题,你需要知道*你在哪里定义变量'searchVal',以及*在哪里以及何时给它赋值。所以更完整的代码是必需的。 – Oleg 2012-02-25 17:20:24
谢谢奥列格。我只是用更多代码更新了我的问题 – Sequenzia 2012-02-25 21:23:35