0

私はJQgridで簡単なことをしようとしています。テキストボックス(名、姓など)のあるページがあります。これらのテキスト ボックスに値を入力し、ボタン クリック イベントで get 呼び出しを行い、コントローラーからデータを取得してグリッドに表示します。初めてでも問題なく動作します。しかし、2回目にテキストボックスの値を変更すると、ビュー側のテキストボックスに従ってパラメーターの値が更新されますが、コントローラー側ではパラメーターの値は更新されません。

たとえば、初めて lastname ="XYZ" として値を渡すと正常に動作しますが、lastname = "BCC" として値を渡すと、XYZ が表示されます。何故ですか?

以下は私のコードです。私は何を間違っていますか?

function Search() {
    var fName = $("#txtFName").val();
    var lName = $("#txtLName").val();
    var city = $("#txtCity").val();
    var state = $("#txtState").val();
    var zip = $("#txtZip").val();
    var dob = $("#txtDOB").val();
    var driverLic = $("#txtDrvierLic").val();
    var playerID = $("#txtPlayerID").val();


    var imurl = "/Home/GetPlayerInformationGrid/?fName=" + fName + '&lName=' + lName + '&city=' + city + '&state=' + state + '&zip=' + zip + '&dob=' + dob + '&driverLic=' + driverLic + '&playerID=' + playerID;


    $("#list").jqGrid({
        url:imurl,
        width: 650,
        datatype: 'json',
        mtype: 'GET',
        colNames: ['FirstName', 'PlayerID', 'Date Of Birth', 'State'],
        colModel: [
          { name: 'FirstName', index: 'FirstName', width: 100, align: 'center' },
          {
              name: 'PlayerID', index: 'PlayerID', width: 100, align: 'center', edittype: 'select', formatter: playerFormatter
          },
          { name: 'DOB', index: 'DOB', width: 100, align: 'center' },
          { name: 'State', index: 'State', width: 100, align: 'center' }
        ],
        pager: '#pager',
        rowNum: 10,
        rowList: [10, 20, 30],
        sortname: 'invid',
        sortorder: 'desc',
        viewrecords: true,
        gridview: true,
        height: "auto",
        caption: 'List of Players',
        loadonce: false

    }).trigger("reloadGrid");

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

}
4

2 に答える 2

1

たとえば、 document.ready 関数で、デフォルトの基準を使用してグリッドを一度作成します。次に、検索機能で次のアプローチを使用して再読み込みします。

var imurl = "/Home/GetPlayerInformationGrid/?.......
jQuery("#list").jqGrid('setGridParam',{url:imurl,datatype:'json'}).trigger("reloadGrid",[{page:1}]);
于 2013-09-25T19:04:30.743 に答える