2014-05-12 60 views
0

我在頁面中有以下代碼。jQuery按鈕點擊刷新jqGrid只發射一次

  1. 我已經進入了員工ID,然後點擊生成員工按鈕和網格看起來不錯的數據

  2. 的問題是,當我改變員工的ID,然後再次點擊Generate按鈕..這個時候網格不刷新..它只顯示舊數據..

請幫我解決這個問題。

在此先感謝。

代碼:

$(document).ready(function() { 
      $("#btn_GenerateEmpList").click(function() { 
       var firstClick = true; 
       if (!firstClick) { 
        $("#EmpTable").trigger("reloadGrid"); 
       } 
       firstClick = false; 
       var empId= $("#txt_emp").val(); 

       $.ajax({ 
        type: "POST", 
        url: "PLBased.aspx/GetEmpNames", 
        data: JSON.stringify({ empId: empId}), 
        contentType: "application/json;charset=utf-8", 
        dataType: "json", 

        success: function (result) { 

         result = result.d; 
         jQuery("#EmpTable").jqGrid({ 
          datatype: "local", 
          colNames: ['Emp Name'], 
          colModel: [ 
            { name: "EmpName", Index: "EmpName", width: 80 } 
          ], 
          data: JSON.parse(result), 
          rowNum: 10, 
          rowList: [5, 10, 20], 
          pager: '#pager', 
          loadonce: false, 
          viewrecords: true, 
          sortorder: 'asc', 
          gridview: true, 
          autowidth: true, 
          sortname: 'EMPID', 
          height: 'auto', 
          altrows: true, 

         }); 
        }, 
        error: function (result) { 

         alert("There was some error "); 
        } 
       }); 
      }); 

     }); 
+0

是在網格本身的按鈕? –

+0

沒有按鈕是在網格的一側... – user3543884

回答

0

在你時,它的成功添加以下代碼AJAX回調:

$("#EmpTable").trigger("reloadGrid"); 
+0

感謝您的響應我試過了..但仍然網格顯示只有舊的數據.... – user3543884

0

你可以試試這個:

gridComplete:function(){ 
    $("#EmpTable").trigger("reloadGrid"); 
} 
+0

沒有..不工作..我懷疑有一個問題數據類型:「本地」, – user3543884

+0

感謝您的回覆 我發現了類似下面的解決方案..只需在成功調用ajax後添加卸載方法 (「#EmpTable」)。 它工作正常... – user3543884

0

重裝電網不會取來自服務器的數據,因爲您的網格已配置datatype:local。您可能需要使用addRowData將數據添加到網格。