2012-12-01 108 views

回答

1

当用户点击save时,您可以简单地更新每行。在函数saverow(target)在演示中,target是保存链接,这样就可以使用得到该行:

function saverow(target){ 

    var $row=$(target).closest('tr'); 
    /* map text of each cell to an array*/ 
    var cellData= $row.find('td').map(function(){ 
     return $(this).text(); 
    }).get(); 

    /* send array to server*/ 

    $.post('upDateUrl', { rowData : cellData}, function(response){ 
     /* do something with response*/ 
    }) 
}; 
+0

感谢您的答复,但问题是我想要做的是批量更新,我会做出改变然后最后要保存我编辑的所有行。你能帮我解决这个问题吗 –

2
var rows = $('#dg').datagrid('getRows'); 
$.each(rows, function(i, row) { 
    $('#dg').datagrid('endEdit', i); 
    var url = row.isNewRecord ? 'test.php?savetest=true' : 'test.php?updatetest=true'; 
    $.ajax(url, { 
     type:'POST', 
     dataType: 'json', 
     data:row 
    }); 
}); 
+0

你应该添加评论或解释以配合你的解决方案 – Sharlike