1

私はこのようにフォーマットされたデータで使用jqgridしていますjson
{"my_id" : 12345, "doc_number" : 9786}

を表示する hlink フォーマッターを使用したいのですが、Javascript 関数のパラメーターとして doc_number使用します。my_id

my_ididユーザーが知る必要のない技術です。彼はdoc_number.

これどうやってするの?

4

2 に答える 2

0

colModelの設定例は次のとおりです

colModel: [ {name:'myname', 
             edittype:'select', 
             formatter:'showlink', 
             formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}
于 2012-09-11T09:37:50.363 に答える
0
function FilterData() {
    jQuery("#grid").jqGrid('setGridParam', { page: 1 });
    jQuery("#grid").trigger("reloadGrid");
}
function drawHyperLink(cellvalue, options, rowObject) {

    var new_formatted_cellvalue = "";
         new_formatted_cellvalue = "<a class='green'  href='Make_A_Bid?xyzparam=" + rowObject.my_id + "'>doc_number</a>";
         return new_formatted_cellvalue;
}

$(document).ready(function () {
    var grid_width = ($("#Div_IntradayStatus").width() * 90) / 100;

    $('#grid').jqGrid({
        colNames: [doc_number],
        colModel: [

                    { name: 'doc_number', index: 'doc_number', formatter: drawHyperLink }
                  ],
        pager: jQuery('#pager'),
        sortname: 'doc_number',
        rowNum: 20,
        rowList: [5, 10, 20, 50],
        sortorder: "desc",
        width: grid_width,
        height: 'auto',
        datatype: 'json',
        caption: '&nbsp;',
        viewrecords: true,
        mtype: 'POST',
        jsonReader: {
            root: "rows",
            page: "page",
            total: "total",
            records: "records",
            repeatitems: false,
            userdata: "doc_number"
        },
        //or ondblClickRow
        onSelectRow: function (id) {
            var row = $('#grid').getRowData(id);
        },
        onPaging: function (pgButton) {
            // if user has entered page number
            if (pgButton == "user") {
                // find out the requested and last page
                var requestedPage = $("#grid").getGridParam("page");
                var lastPage = $("#grid").getGridParam("lastpage");
                // if the requested page is higher than the last page value 
                if (parseInt(requestedPage) > parseInt(lastPage)) {
                    // set the requested page to the last page value – then reload
                    $("#grid").setGridParam({ page: lastPage }).trigger("reloadGrid");
                }
            }
        },
        url: your url
    })

    jQuery("#grid").jqGrid('navGrid', '#pager', { edit: false, add: false, del: false, search: false, refresh: false });
});

あなたはこのようなことをしなければなりません

于 2012-09-11T09:39:26.523 に答える