0

我必须将 jqgrid 放置在不同的位置,而不是默认的左上角位置。我尝试了一些方法,但它不起作用。我在这里包含了我的代码..请检查一下并给我一个解决方案..

这是html代码:

<div>
    <table id="table" style="border-spacing: 7px 7px; margin-left: 5px">
        <tr>
            <td>
                <input style="margin-left: 10px;" type="button" value="Add" id="btn_addusers" />
            </td>
        </tr>
    </table>
    <table id="users_grid" style="left: 300px">
    </table>
</div>

这是我的 js 代码:

$(document).ready(function() {
    $("#btn_addusers").click(function() {
        $("#users_grid").clearGridData(true).trigger("reloadGrid");
        $("#users_grid").jqGrid({
            datatype: "local",
            height: 'auto',
            width: 'auto',
            colNames: ['User ID', 'User Name'],
            colModel: [
        { name: 'userid', width: 60 },
        { name: 'username', width: 120 }

    ],

            caption: "Users in Private space"
        });
        var mydata = [
        { userid: "312171", username: "D, Gnana Xavier" },
        { userid: "311763", username: "Sangeetha" },
        { userid: "312185", username: "Amrutha" },
        { userid: "312186", username: "Ramesh" }
        ];
        for (var i = 0; i <= mydata.length; i++)
            $("#users_grid").jqGrid('addRowData', i + 1, mydata[i]);

    });
});
4

2 回答 2

3

jqGrid在表格元素上创建了许多额外的外部div。所以你应该把<table>元素放在里面,<div>你可以使用外部 div 的样式来改变表格的位置。例如

<div style="margin-left: 300px">
    <table id="users_grid"></table>
</div>
于 2012-11-12T08:22:37.033 回答
3

好的,正如@aristos 建议的那样。我试图解释我的答案。
div中的用户位置=relative如下

<div style="position:relative;">
    <table id="table" style="border-spacing: 7px 7px; margin-left: 5px">
       <tr>
          <td>
            <input style="margin-left: 10px;" type="button" value="Add" id="btn_addusers" />
          </td>
       </tr>
     </table>
    <table id="users_grid" style="left: 300px;position:absolute!important;">
    </table>
</div>

注意

如果父容器的位置是相对位置:相对
并且内容的位置是绝对的,那么它可以在容器中移动。
现在您可以使用lefttop属性来移动表格。
但它不会超出 div。

于 2012-11-12T08:28:20.130 回答