0

http://www.trirand.com/blog/jqgrid/jqgrid.htmlから jqGrid のサンプルを試しています。グリッドにはデータが表示されますが、デフォルトのスタイル (フォント サイズ、さまざまなブロック/行の高さなど) は適用されません。デフォルトのスタイルとは、trirand サイトで使用されている例で見られるものを意味します。

これを修正するにはどうすればよいですか?

ありがとう Vivek Ragunathan

私が使用したコード:

<html>
<head>
    <title>JQGrid</title>
    <link rel='stylesheet' type='text/css' href='http://code.jquery.com/ui/1.10.3/themes/sunny/jquery-ui.css' />
    <link rel='stylesheet' type='text/css' href='http://www.trirand.com/blog/jqgrid/themes/ui.jqgrid.css' />

    <script type='text/javascript' src='http://localhost:82/testbed/resources/jquery-1.7.1.min.js'></script>
    <script type='text/javascript' src='http://www.trirand.com/blog/jqgrid/js/jquery-ui-custom.min.js'></script>        
    <script type='text/javascript' src='http://www.trirand.com/blog/jqgrid/js/i18n/grid.locale-en.js'></script>
    <script type='text/javascript' src='http://www.trirand.com/blog/jqgrid/js/jquery.jqGrid.js'></script>

    <script type="text/javascript">
        var lastsel2;

        $(function () {
            $("#list1").jqGrid({
                caption: "Trying out jqGrid for Points",
                url: <url>,
                editurl: <edit url>,
                mtype : "get",
                datatype: "json",
                colNames: ['id', 'Name', 'Age', 'Address'],
                colModel: [
                    { name:'id',        index: 'id',        width: 35, align:"left", editable: true, sorttype: 'int', editrules: { edithidden: true }, hidden: true },
                    { name: 'name',     index: 'name',      width: 35, align:"left", editable: true, editoptions: { size: '20', maxlength: '255'} },
                    { name: 'age',      index: 'name',      width: 35, align:"left", editable: true, editoptions: { size: '20', maxlength: '255'} },
                    { name: 'address',  index: 'address',   width: 35, align:"left", editable: true, editoptions: { size: '20', maxlength: '255'} },
                ],
                rowNum: 10,
                autowidth: true,
                height: 150,
                rowList: [10, 20, 30, 50, 80, 100],
                pager: '#pager1',
                toolbar: [true,"top"],
                sortname: 'created',
                viewrecords: true,
                altRows: true
            });

            $("#list1").jqGrid('navGrid', '#pager1', { edit: true, add: true, del: false });
        });
        }
    </script>

</head>

<body>
    <table id="list1"></table>
    <div id="pager1"></div>
</body>

4

1 に答える 1

1

記述された問題の理由は、<!DOCTYPE html ...>前の行が欠落している可能性があると思います<html>。ページで使用している HTML/XHTML 言語のバージョンと方言を Web ブラウザに明確に伝えることが重要です。あなたのページで使用<link ... />します。それで XHTML 言語でコードを書こうとしたのでしょう。次のようなものを使用できる場合

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

の代わりに<html>

さらに、次の行を含めることをお勧めします

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />

の冒頭に(ドキュメントの<head>例のように)。インターネットから他の JavaScript ファイルを読み込む場合は、jQuery も、またはたとえばから読み込むことができます。http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.jshttp://code.jquery.com/jquery-1.10.1.min.js

使用する jqGrid のバージョンを書いていません。最新のバージョン (現在は 4.5.2) を使用し、 の代わりにjquery.jqGrid.min.jsorを含める必要があります。jquery.jqGrid.src.jsjquery.jqGrid.js

すべてのグリッドでgridview: trueandオプションを使用することをお勧めします。autoencode: trueの使い方height: "auto"も良さそうです。オプションsortname: 'created'はコピペミスだったと思います。グリッドの既存の列の名前を使用する必要があります。

于 2013-07-03T08:25:07.263 に答える