我正在使用下面的代码打开一个模态窗口(modal_top10),现在我需要将一个参数($ manager)传递给这个模态。如何传递此参数?通过URL?
<div class="modal fade" id="myModaltop10" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"></div>
<script>
function top10(){
$.ajax({
type:'GET',
url:'index.php?r=/client/base/modal_top10',
success: function(data)
{
$('#myModaltop10').html(data);
$('#myModaltop10').modal();
}
});
}
</script>
答案 0 :(得分:1)
首先使用以下代码在视图文件夹中创建_modelview文件。让此页面的网址为http://example.com/model/show
<?php
echo $data;
?>
注意:您必须使用renderAjax()方法为控制器模型中的此视图文件进行渲染
public function actionShow($data)
{
return $this->renderAjax('_modelview', [
'data' => $data,
]);
}
您可以在模型中将视图文件渲染到
Modal::begin([
'header' => '<h4>Events</h4>',
'id' => 'events',
'size' => 'model-lg',
]);
echo "<div id='modelContent'></div>";
Modal::end();
然后你可以创建jquery文件来显示模型中的数据
$(document).ready(function(){
var eventUrl = "http://example.com/model/show";
var data = "data to be sent in this view url for your case $manager";
$.get(eventUrl, {'data': data}, function(data){
$('#events').modal('show')
.find('#modelContent')
.html(data);
});
答案 1 :(得分:0)
您可以在没有Ajax的情况下实现此功能。
Modal::begin([
'header' => '<h2>Hello world</h2>',
'toggleButton' => ['label' => 'click me'],
]);
echo $manager;
Modal::end();
或者,例如,使用bootbox(http://bootboxjs.com/)。
在控制器中:
public function actionModalContent(){
$maanager = /*...*/
return $this->asJson($this->renderAjax('modal_content_view', ['manager'=>$manager]));
}
答案 2 :(得分:0)
我无法关注帖子。我做了以下事情:
<?php
Modal::begin([
'header' => "<h4>Top 10</h4>",
'id' => 'top10',
'size' => 'model-lg',
'toggleButton' => [
'tag' => 'a',
'label' => '
<span style="cursor: pointer;">
Veja os associados TOP 10 e cadastre sua visita!
</span>',
]
]);
echo $this->render('_modaltop10', ['manager' => $manager]);
Modal::end();
?>