Очевидно, что есть множество способов сделать это, но вот как я бы это решил. Выполните ajax-вызов перед загрузкой диалогового окна, чтобы заполнить содержимое диалогового окна, показать диалоговое окно, затем сохранить, закрыть диалоговое окно и обновить сетку. Это основы, здесь есть некоторый вспомогательный код. Я считаю хорошей практикой возвращать результат json из действия сохранения, чтобы определить, успешно ли сохранено, а если нет, то сообщение об ошибке, указывающее, почему его не удалось отобразить пользователю.
<div id="dialog" title="Basic dialog">
<!-- loaded from ajax call -->
<form id="exampleForm">
<input blah>
<input type="button" onclick="Save()" />
</form>
</div>
<script>
$(function() {
$('.myPop').click(function() {
$.get("editController/loadContents", function(data){
$("#dialog").html(data);
});
$("#dialog").dialog('open');
});
});
function Save(){
$.post("/editController/Edit", $("#exampleForm").serialize(),
function(data){
$("#dialog").dialog('close');
//update grid with ajax call
});
}
</script>