2013-05-29 105 views
0

我想在jqGrid的導航欄代碼的自定義按鈕(我是新來的jqGrid)。它的功能很簡單...基於選定的行,它必須從服務器獲取一些信息,然後用請求的信息打開一個對話框。在導航尋呼機jqGrid的自定義BUTTOM創建自定義對話框

這裏,我們去:

  .navButtonAdd('#pager-list',{ 
      caption: "", 
      title: "View products", 
      buttonicon:"ui-icon-clock", 
      onClickButton : function() { 

        var line = $('#grid-list').jqGrid('getGridParam', 'selrow'); 
        if (line == null) { 
         alert("please select a row!"); 
        } 
        else { 

         $.get('products.php', { rowSel: line }, function (data) { 






     I want to implement a dialog that will open and set something(using the JSON response from server DATA). 
     like this very simple: 
    Product ID: data[0].pID; 
    Product Name: data[0].pName; 
    Product Price: data[0].pPrice; 

and a close button. 


         }); 

        } 


      }, 

我見過一對夫婦的例子,但我只是弄糊塗了。有沒有人可以幫我解決這個問題......先謝謝了。

UPDATE ......我解決像這樣:

else { 



         $.get('products.php', { rowSel: line }, 
         function (data) { 

         $.jgrid.info_dialog('Review Products',data, $.jgrid.edit.bClose,{buttonalign:'center', width:'auto',resize: true , align: 'left'}); 


         }); 

所有數據操作已在服務器端進行了...

的感謝!

回答

1

我用同樣的情況遇到了前一段時間,在那裏我想添加一個按鈕,從下載的jqGrid在csv格式中選擇的行。但是我發現在網格外放一個按鈕並向服務器發出ajax請求並獲得結果會容易得多。其實在我的情況下,這是一個同步調用。 Anyways..here是我used..I不是說其是不可能的,但是這取決於你的項目限制的代碼...:

function x() { 

    var obj = jQuery("input:checked").map(function() { return jQuery(this).parents('tr').attr('id'); }); 

    var result = null; 
    var arr = jQuery.makeArray(obj); 
    var data = arr.join(','); 

    $.ajax({ 
    url : '<%= url_for :controller => "products", :action =>"export_to_csv" %>', 
     type : 'POST', 
    data : {data:data}, 
    dataType : 'string', 
     async: false, 
     success : function(response) { result = response; } 
    }); 

    window.open('data:text/csv;charset=utf-8,' + escape(result)); 

    }; 

    <%= jqgrid("List of products: you can filter (using the lens icon in the bottom of the grid), sort (clicking on the header column), scroll the data in the grid (using the pagination system)", "gbgrid", products_path, 
    [{ :field => "id"},{ :field => "act"},{ :field => "code"}] 
     }) %> 
-1

我不知道關於LuferBRA的代碼,但我遇到了同樣的問題來了與JQgrid和我有AJAx請求的概率...我想同步請求是解決方案。 Thanx Kumar