我只是遵循這個,但我的php是, Show different Jqgrid formats in the same page我也希望同樣的選項,如果我從下拉列表中選擇一個項目所有列想要隱藏除了少數,特別是我不明白這個和這個代碼是如何工作通過點擊Mostrar
如何php
在jqGrid顯示下拉列表中選擇不同的列
<table width="100%">
<tr>
<td>Tipo de Equipo :</td>
<td><% =Html.DropDownList("TipoId", (SelectList)ViewData["tiposdeEquipo"], "--Seleccione--", new { @id = "displaydropdown" })%> </td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Mostrar" /></td>
</tr>
</table>
寫這樣的代碼,請幫助我,我是個初學者。
這是我的代碼
<select id="displaydropdown" name="displaydropdown">
<option selected>Change Type</option>
<option value="A">option1</option>
<option value="B">option2</option>
<option value="C">option3</option>
</select>
<div class="box A" align="center"><table id="jqGrid" ></table><div id="jqGridPager"></div></div>
<script type="text/javascript">
var lastsel;
$(function() {
$("#jqGrid").jqGrid({
url:'server.php',
editurl: 'update.php',
datatype: "json",
shrinkToFit: true,
colModel:[
{label:'COUNT',name:'ID',align:"center"},
{label:'EMPLOYEE LOGIN',name:'Employee_Login',align:"center"},
{label:'NEW LEAD',name:'New_Value',align:"center"},
{label:'REASON/COMMENTS',name:'Requestor_NOTES',align:"center"},
{label:'EXISTING LEAD',name:'Existing_Value',align:"center"},
],
rowNum:200,
rowList:[400,300,200],
onCellSelect: function (rowid, iCol, cellcontent, e) {
if (rowid && rowid !== lastsel) {
$('#jqGrid').restoreRow(lastsel);
lastsel = rowid;
}
$('#jqGrid').editRow(rowid, true, iCol);
},
pager: '#jqGridPager',
sortorder: "asc",
viewrecords: true,
height:'300px',
width:'750'
});
jQuery("#jqGrid").jqGrid('navGrid',"#jqGridPager",{edit:false,add:false,del:false,search:false});
//$('#jqGrid').jqGrid('setGridWidth', '1300');
});
$("#displaydropdown").change(function() {
var display = $("#displaydropdown option:selected").val();
if (display == 'A')
{
$('#jqGrid').hideCol('ID');
$('#jqGrid').showCol('Req_Date');
$('#jqGrid').showCol('App_WeekBeginning');
}
else if (display == 'B') {
$('#jqGrid').hideCol('App_WeekBeginning');
$('#jqGrid').showCol('Req_Day');
$('#jqGrid').showCol('App_Week');
}
else if (display == 'C') {
$('#jqGrid').hideCol('App_Week')
$('#jqGrid').showCol('ID');
$('#jqGrid').showCol('Req_Date');
}
});
</script>
你到底有哪個問題(有什麼不行)?代碼'jQuery(document).ready(function(){...});'和$(function(){...});'do **相同*:你不應該放置一個正在等待另一個文檔準備好。具有從'url:'server.php''返回的數據的格式(具有2-3行的示例會有幫助)?你絕對不應該在'colModel'中使用'name'屬性,其值包含空格(比如''NEW LEAD'')或特殊字符'name:'EXISTING LEAD''。使用'index'屬性是不好的。可能你想使用'label:'EMPLOYEE LOGIN',名稱:'Req_Date''? – Oleg
每個關於jqGrid的問題都包含了很重要的信息,你使用哪個版本的jqGrid,以及從哪個版本的jqGrid([free jqGrid](https://github.com/free-jqgrid/jqGrid),商業版本[Guriddo jqGrid JS](http://guriddo.net/?page_id=103334)或舊版本的<= 4.7版本的jqGrid)。另一個常見的評論:我建議你看看[答案](http://stackoverflow.com/a/34976517/315935),它顯示了在'beforeSelectRow'內調用'editRow'和'restoreRow'的例子。和'onSelectRow'以及'savedRow'參數的使用而不是'lastsel'。 – Oleg
謝謝@Oleg的回覆,我會重命名爲標籤名稱。我正在使用[Guriddo jqGrid JS](http://guriddo.net/?page_id=103292), –