2011-12-01 79 views
2

我使用ATK dialogURL與按鈕假的,我的一些領域,並加入我的按鈕:atk4 dialogURL關閉按鈕

$f2->addSubmit(); 
$f2->addButton('Close')->js('click',$f2->js()->univ()->closeDialog()); 
if($f->isSubmitted()){ 
     $f->update(); 
} 

後推「保存」按鈕,我對話框不緊密(我不不想的話),然後我點擊我的關閉按鈕對話框,而是出現:

「‘表單上的更改將丟失繼續?’」

爲什麼呢?我的數據正確保存在數據庫中。似乎.form_changed不更新

回答

1

內isSubmitted,你需要明確關閉對話框:

if($f->isSubmitted()){ 
    $f->update(); 
    $f->js()->univ()->closeDialog()->execute(); 
} 

默認情況下,之前被破壞對話框中,可以檢查它是否已經改變。它通過向form標籤添加一個類(form_changed)來實現。你有其他選擇。例如,您可以完全刪除形式:

if($f->isSubmitted()){ 
    $f->update(); 
    $f->js()->remove()->execute() 
} 

或者:

$this->addButton('Close')->js('click', 
    $form->js()->find('form')->removeClass('form_changed') 
)->univ()->closeDialog(); 
+0

太好了!非常感謝! – user940945