我尝试使用JQuery UI构建自定义Dialog,我需要使用两个按钮将此Dialog作为通用Dialog(允许我从许多视图加载它)。我想发送控制器名称,动作名称和参数,当用户按下OK按钮时,我调用控制器动作传递参数,但我不知道如何实现它。
构建对话框没有问题,试图从JQuery调用控制器的问题,我尝试了类似的东西,但它没有工作:
function showDialog(controller, action, params){
$( function() {
$( "#main-dialog" ).dialog({
modal: true,
buttons: {
Ok: function() {
$.ajax({ url: "http://" + domain.name + "/" + controller + "/" + action + "/" + params });
$( this ).dialog( "close" );
},
Cancel: function(){
$( this ).dialog( "close" );
}
}
});
} );
}
答案 0 :(得分:0)
试试这个
url = '<?php echo $this->html->url(array('controller'=>'YourController','action'=>'YourAction')) ?>'
答案 1 :(得分:0)
我终于解决了这个问题:
function showDialog(controller, action){
var url = "http://" + document.domain + "/" + controller + "/" + action;
// ...Loop through the received parameters and attach them to the "url" (using the required separator)
$( function() {
$( "#main-dialog" ).dialog({
modal: true,
buttons: {
Ok: function() {
window.open(url,"_self");
$( this ).dialog( "close" );
},
Cancel: function(){
$( this ).dialog( "close" );
}
}
});
});
}