2

最近、Webプロジェクトの作業を開始しました。私の要件は、Flexigrid Jqueryプラグインを使用して、データベースからデータのチャンクをレンダリングすることです。サーバー側では、Jacksonを使用してデータをフォーマットします。私のjqueryスクリプトは次のようになります:

<script type="text/javascript">
$(document).ready(function() {
    $("#customers").flexigrid({
          url: 'JsonHandler',
          dataType: 'json',
          colModel : [
            {display: 'Id', name : 'userid',},
            {display: 'Name', name : 'fullname',},
            ],
          title: 'Table',
          width: 700,
          height: 200
        });   
        });
</script>

サーバーは有効なJsonデータをブラウザーに送信します(これはFirebugで取得したものです):

[{"userid":"a","fullname":"John Doe"},
 {"userid":"b","fullname":"Mark Brown"},
 {"userid":"c","fullname":"Mads Borsen"}]

どういうわけか私のテーブルはまだ空です。何か提案があれば、助けてください。

私の場合、からのオプションnamecolModel、jsonデータのキーと正確に一致する必要があると思います。useridfullname

文字エンコードに関連しているのでしょうか?

ありがとう!

4

1 に答える 1

3

FLEXIGRIDがレンダリングする必要のあるフォーマットは次のようなものです

{"page":"1","total":"1","rows": 
[ 
  {"id":"1","cell":["1","55144602","Z014162","C"]},
  {"id":"3","cell":["3","55189392","Z014162","C"]},
  {"id":"4","cell":["4","55189393","Z014162","C"]},
  {"id":"5","cell":["5","55189394","Z014162","C"]},
  {"id":"6","cell":["6","55189395","Z014162","C"]}
]}

「page」、「total」、「rows」フィールド、および「id」、「cell」フィールドを含める必要があります。「cell」の括弧内に含まれる値:[]は、flexigridがグリッドをレンダリングまたは塗りつぶすために使用する値です。テスト目的で、jspファイルを使用して回答をシミュレートします。グリッドには4つのフィールドがあり、ご覧のとおり、それらは、回答の各セルフィールドの値で埋められます。

JACKSONがレンダリングできるオブジェクトを作成していますが、まだ作業中です。これを実現するために必要な唯一の手がかりは、ArrayListを送信した場合、jacksonが[]応答を返すか、Ojectのみを返す場合、またはJavaBeanを返すことです。応答。

この情報がお役に立てば幸いです。

マヌエルサンティランエルレオン

于 2012-05-23T18:01:03.573 に答える