我想彈出一個jQuery Ui對話框,但它不起作用。我沒有打開對話框,而是打開了一個新頁面。我的代碼是未來:ZF2 - 顯示jQuery Ui對話框
控制器的動作:
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>
我只是不明白它,爲什麼這不是它應該的那麼簡單。任何幫助?
我試過這樣,但它不起作用。它仍然會打開一個新頁面。 – Orochi
然後在JavaScript的某處出現錯誤。 'e.preventDefault()'是單擊鏈接時發生的第一個事件,它確切地說明了它的作用,它阻止了默認操作的發生。如果沒有,JS根本沒有得到執行,所以之前的某個地方必須是JS錯誤,搜索它:) – Sam
我有一個簡單的zf2表單按鈕(不提交按鈕!),並帶有一個類「createContact」併成功使用@Sam提供的示例:$('。createContact')。on('click',function(e){... .load('<?php echo $ this-> url('contact', array('action'=>'add'));?>')...} - 但由於某種原因我不得不刪除autoOpen:false選項,否則在通過AJAX加載鏈接後沒有對話框會打開。 – webDEVILopers