2012-05-06 64 views
1

我不想彈出一個對話框來實現這個。我的意思是我需要就地編輯器。如何在flexigrid中編輯數據

+3

您能否給我們一些背景? – gdoron

+0

爲什麼我的問題得到-4? –

+1

我想這是因爲缺乏上下文......什麼是'flexigrid'?什麼是DOM結構?你爲什麼需要它?我怎樣才能找到'flexigrid'?如果所有這些人都在這裏,它仍然是SO中的主題,這不是一項推薦服務。 **祝你的問題!** – gdoron

回答

4

我找到了一種方法來做到這一點。 使用jquery.editinplace 以下是我的代碼:

<script type="text/javascript" src="./js/jquery.editinplace.js"></script> 
function editDescription(celDiv, id){ 

    $(celDiv).click(function() { 
    var idTd = $(celDiv).parent().parent().children()[1]; 
    $(celDiv).editInPlace({ 
     url: "http://localhost:8081/kaimei/update_description", 
     params: "address="+$(idTd.children).html(), 
     error:function(obj){ 
     alert(JSON.stringify(obj)); 
     }, 
     success:function(obj){ 
     var str = m[JSON.parse(obj).status+""][window.curLanguage]; 
     alert(str); 
     $("#displays").flexReload(); 
     } 
    }); 
    }); 
} 

$(document).ready (function() { 

    $("#displays").flexigrid (
    { 
     url: 'http://localhost:8081/kaimei/load_displays', 
     method:'GET', 
     dataType: 'json', 
     width: 400, 
     height: 300, 
     colModel : [ 
     {hide: '勾選', name: 'check', width: 30, sortable: true, align: 'left'}, 
     {display: 'ID', name: 'id', width: 90, sortable: true, align: 'left'}, 
     {display: '描述信息', name: 'description', width: 110, sortable: true, align: 'left',process:editDescription}, 
     {display: '狀態', name: 'status', width: 20, sortable: true, align: 'left'} 
     ] 
    } 
    ); 
});