Вы можете обернуть свою диалоговую логику в объект контроллера.
Затем, когда вы создаете экземпляр объекта контроллера, вы можете передать его в элемент, с которым будет работать диалог, а также с данными ajax submision.эти данные содержатся в вашем контроллере, и вы можете просто отправить его.
Примерно так:
MyApp = {}
MyApp.MyDialog = function(context, ajaxData) {
this.context = context;
this.ajaxData = ajaxData;
this.initializeDialog();
}
MyApp.MyDialog.prototype.initializeDialog = function(){
$(this.context).dialog({
//Your other dialog options here,
buttons: {
"yes": function(){
//Do ajax post with this.ajaxData
},
"No": function(){
this.context.dialog("close");
}
}
});
}
Затем вы можете сделать что-то вроде:
var dialog = new MyApp.MyDialog("#myElement", {foo: "bar"});