私は単純な問題の解決策を求めてインターネット全体を検索してきましたが(願っています)、残念ながら何も役に立ちませんでした..
私はjqGridの初心者で、すべてのサンプル配列データをテーブルに表示することに成功しました。私が望むのは、「役割」列をインラインで編集して配列データに保存できるようにすることです... Zend フレームワークを使用していますが、次の問題があります。
私の問題
データをまったく編集できません。いつものように選択して強調表示するだけで、テキストエリアは提供されていません..
これが私の HTML です (正しいライブラリを使用していることを確認してください):
<html>
<head>
<title>JqGrid Test</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="/js/jquery-ui-1.8.18.custom/css/ui-lightness/jquery-ui-1.8.18.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="/js/jquery.jqGrid-4.4.0/css/ui.jqgrid.css" />
<script src="/js/jquery.jqGrid-4.4.0/js/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="/js/jquery.jqGrid-4.4.0/js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="/js/jquery.jqGrid-4.4.0/js/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="/js/test/index.js" type="text/javascript"> </script>
<script src="/js/jquery-ui-1.8.18.custom/js/jquery-ui-1.8.18.custom.min.js" type="text/javascript"></script>
<script src="/js/jquery.jqGrid-4.4.0/src/grid.loader.js" type="text/javascript"> </script>
</head>
<body>
<table id="list" class="scroll"></table>
<br />
</body>
</html>
次の私のindex.js
:
$(document).ready(function(){
var lastsel2;
jQuery("#list").jqGrid({
datatype: "local",
height: 250,
colNames:['Role Id','name'],
colModel:[
{name:'id',index:'id', width:60, sorttype:"int", editable: true},
{name:'name',index:'name', width:100, sortable:false,editable: true,
edittype:"textarea", editoptions:{rows:"2",cols:"10" },
],
onSelectRow: function(id){
if(id && id!==lastsel2){
jQuery('#list').restoreRow(lastsel2);
jQuery('#list').editRow(id,true);
lastsel2=id;
}
},
caption: "Manipulating Array Data",
});
var mydata = [
{id:"1",name:"test"},
{id:"2",name:"test2"},
{id:"3",name:"test3"},
{id:"4",name:"test"},
{id:"5",name:"test2"},
{id:"6",name:"test3"},
{id:"7",name:"test"},
{id:"8",name:"test2"},
{id:"9",name:"test3"}
];
for(var i=0;i<=mydata.length;i++)
jQuery("#list").jqGrid('addRowData',i+1,mydata[i]);
});
私は何が欠けていますか?私の質問が明確であったことを願っています。回答を投稿してくれたすべての人に感謝します。