我想弹出一个jQuery Ui Dialog,但它不起作用。我没有打开对话框,而是打开了一个新页面。我的代码是下一个:
控制者的行动:
public function diaAction()
{
$viewModel = new ViewModel();
$viewModel->setTerminal(true);
return new ViewModel();
}
index.phtml:
<a class="some-link" title="title here" href="<?= $this->url('dialog', array('action' => 'dia'))?>">open form</a>
dia.phtml(对话框代码)
<script type="text/javascript">
$(document).ready(function() {
$('.some-link').each(function() {
var $link = $(this);
var $dialog = $('<div></div>')
.load($link.attr('href'))
.dialog({
autoOpen: false,
title: $link.attr('title'),
});
});
});
</script>
我只是不明白,为什么这不应该如此简单。有帮助吗?
答案 0 :(得分:1)
您必须处理“点击”,以便显示对话框而不是关注链接。像这样:
$('.table a.button').on('click',function(e){
e.preventDefault();
$('<div></div>')
.load($link.attr('href'))
.dialog({
autoOpen: false,
title: $link.attr('title'),
});
});
答案 1 :(得分:0)
在我看来,javascript只是在正确的位置。它由index.phtml调用,而不是dia.phtml。如何才能执行它浏览器只是不知道它的存在? 我认为我的答案对你来说太晚了,但我希望它能帮助其他人。