2010-12-16 82 views
0

更新: 我已經上傳了一個簡單的解決方案,其中包含2個網格。當我雙擊第一個網格時,我可以得到行ID,但是將其傳遞給第二個網格的人......我不明白..請幫助MVC將數據從一個網格傳遞到另一個網格

解決方案已上傳到此URL - > http://www.4shared.com/file/HPRynWG8/MvcApplication1.html

佩普


我有一個問題,我的2個網格(MVC 2.0) 當我在第一個網格一行雙擊,第二個格應重新加載和顯示與第一個網格中點擊的行匹配的詳細數據。 但是,如何將第一個網格的行ID傳遞給第二個網格(到控制器函數)?

佩普

回答

0

打氣,

則需要通過使用您的ROWID Ajax調用做到這一點。如果你的表結構設置了每行的id,那麼你很好。該功能將沿着以下幾行(假設jquery):

$(document).ready(function() { 
    $('#grid1 tr').dblclick(function(){ 
     var id = $(this).attr('id'); 
     var url = '<%=Url.Action("Details")%>/' + id; 
     // now call your controller action with this id via $ajax() 
     $.ajax(/* your core code here */); 
    }); 
}); 

您的被調用的操作應該使用數據填充partialview。這反過來會將頁面上的目標表格的div ID作爲目標。

我假設有熟悉的jQuery/AJAX - 希望這有助於

1

已經在第一網格每行包括含有實體一個隱藏的輸入字段/行ID(或給每行一個ID或類像'ROWID')。然後使用jQuery做類似的東西

$(document).ready(function() { 
    $('#firstgrid tr').dblclick(function(){ 
    var id = $(this).find('input').val(); 
    var urlToRequestDataFrom = /* built using the id above */ 
    $.ajax(/* request data and update second grid */); 
    }); 
}); 

要更新第二格,你可以只呈現所有它的服務器上,並使用jQuery's .html()插入電網呈現在你的頁面。或者,從服務器返回JSON結果並使用jQuery的DOM操作方法使用自定義DOM操作來呈現它,或者查看the templating system

更多的參考資料:

jQuerydblclick

檢索數據使用jQuery getjQuery ajax

相關問題