这是我的_form
<div class="row">
<div class="col-sm-4">
<?= $form->field($model, 'otm_grading_system')->dropdownList(otTestGradingSystem::getTestGradingSystem(), [
'prompt' => Yii::t('ot', '--- Select Grading System ---'),
'onchange' => '$.get( "'.Url::toRoute('dependent/get-grading-system').'", { id : $(this).val() }).done(function(data) {
$( "#seeHere").html(data);
});'
]) ?>
</div>
<div class="col-sm-4" id="seeHere">
</div>
</div>
在表单dropDownList中更改事件获取url。显示在下面DependendController.php
class DependentController extends yiiwebController
{
public function actionGetGradingSystem($id)
{
return Html::a('See Here 123', ['test-grading-system/view', 'id' => $id], ['id' => 'seeHereMdl', 'title' => Yii::t('ot', 'View Result')]);
}
}
这是模态负载js
<?php
$this->registerJs(
"$(document).on('ready pjax:success', function() {
$('#seeHereMdl').click(function(e){
e.preventDefault();
$('#grading-sys-modal').modal('show')
.find('.modal-content')
.load($(this).attr('href'));
});
});
", $this::POS_HEAD);
?>
<?php
yiibootstrapModal::begin([
'id'=>'grading-sys-modal',
'size' => 'modal-lg'
]);
yiibootstrapModal::end();
?>
我的问题是,这无法以模式加载视图文件,但它重定向到此视图页面。
这是一个事件处理问题(与yii无关),而不是:
$('#seeHereMdl').click(function(e){});
你应该简单地尝试一下:
$('body').on('click', '#seeHereMdl', function(e) {});
阅读更多:动态创建的元素上的事件绑定?