0
コントローラコードに動作していない動的カラム:jqGridのV4 -
public JsonResult GetGridColumn()
{
var jsonData = new
{
colNames = "['actname']",
colModel = "[{ name: 'actionTaken'}]",
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
}
}
ビューコード:私は[ 'actname']としてコルンを取得
$(document).ready(function() {
$.ajax({
type: "POST",
url: "/GetForm/GetGridColumn",
data: "",
datatype: "json",
success: function (data) {
colN = data.colNames;
colM = data.colModel;
$("#taskGrid").jqGrid({
url: "someurl",
datatype: 'jsonstring',
mtype: 'POST',
colNames: colN,
colModel: colM,
pager: jQuery('#pager'),
rowNum: 10,
rowList: [10, 20, 30, 40],
height: '100%',
viewrecords: true,
width: 1250,
jsonReader: {
cell: "",
id: "0"
}
})
}
});
});
をコルム[として{名: 'actionTaken'} ]。上記のスクリプトを実行すると、このエラーが発生します。length of colNames <> colModel!
'var jsonData = new {colNames = new [] {" actname "}、colModel = new [] {new {name =" actionTaken "}}};'どのようにしても 'jsonData.colNames'と'jsonData.colModel'は文字列ではなく**配列**でなければなりません。 jqGridは両方の配列が同じ数の要素を持っていることを確認しますが、文字列として 'colNames'と' colModel'を使い、テスト 'if(p.colNames.length!== p.colModel.length){'はあなたの場合の弦。これは、間違ったエラーメッセージの原因です。 – Oleg
ありがとう、オレグ。私は上記のように私のjasonDataを変更し、それは働いた! – priya
あなたは大歓迎です!私は答えと同じ情報を投稿しました。 – Oleg