Ich folgte nur, aber meins ist in php, Show different Jqgrid formats in the same page Ich möchte auch die gleiche Art von Optionen, wenn ich ein Element aus Dropdown auswählen alle Spalten außer wenigen verstecken möchten, vor allem ich nicht verstanden dies und wie diesen Code zu schreiben, in php
Zeige verschiedene Spalten auf Auswahl von Dropdown in 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>
wie dieser Code funktioniert, indem das Mostrar
klicken, helfen Sie mir bitte ich ein Anfänger bin.
Dies ist mein Code
<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>
Welches Problem genau hast du (was ist nicht funktionieren)? Der Code 'jQuery (document) .ready (function() {...});' und '$ (function() {...});' tu ** das gleiche **: du solltest nicht platzieren eine wartet auf das Dokument, das in einem anderen bereit ist. Welches Format haben die Daten von 'url:' server.php'' (ein Beispiel mit 2-3 Zeilen wäre hilfreich)? Sie sollten niemals 'name' -Eigenschaft in' colModel' mit den Werten verwenden, die Leerzeichen (wie ''NEW LEAD'') oder Sonderzeichen' name:' EXISTING LEAD' enthalten. Es ist schlecht, 'index'-Eigenschaften zu verwenden. Wahrscheinlich möchten Sie 'label: 'EMPLOYEE LOGIN', Name: 'Req_Date'' verwenden? – Oleg
Es ist wichtig, in jede Frage über jqGrid die Information aufzunehmen, welche Version von jqGrid Sie verwenden und von welchem fork von jqGrid ([freies jqGrid] (https://github.com/free-jqgrid/jqGrid), kommerziell [Guriddo jqGrid JS] (http://guriddo.net/?page_id=103334) oder ein altes jqGrid in Version <= 4.7). Eine weitere häufige Bemerkung: Ich würde Ihnen empfehlen, [die Antwort] (http://stackoverflow.com/a/34976517/315935) zu betrachten, die ein Beispiel für das Aufrufen von 'editRow' und' restoreRow' in 'beforeSelectRow' zeigt und 'onSelectRow' und die Verwendung von' savedRow' Parameter anstelle von 'liessel'. – Oleg
Danke @Oleg für die Antwort, ich werde umbenennen zu Label von Name. Ich benutze [Guriddo jqGrid JS] (http://guriddo.net/?page_id=103292), –