我有一個視圖,我想有3個按鈕;保存,保存&下一個,保存&上一個。保存按鈕是標準的提交類型按鈕,它的工作原理。其他兩個按鈕顯示爲按鈕,但不會執行任何操作。我寫了一個名爲save_move_next.js的文件來調用一個動作,並給這個按鈕一個id,並將所有適當的東西放在它們應該在的位置,但它沒有做任何事情。CakePHP按鈕不會直接查看「automagic」函數來做到這一點?
有沒有一些預先建立的方式來做到這一點?基本上,用戶點擊按鈕,控制器中的動作接管,保存信息然後移動到下一個項目。
會把它放在表單上修正問題嗎?或改變它,所以它看起來像:
$this->Form->submit('Button text', array(some controller, action);
$this->Form->submit('Button text', array(some controller, action);
$this->Form->submit('Button text', array(some controller, action);
$this->Form->end();
的視圖部分:
<?php echo $this->Form->end(__('Submit', true));?>
<?php echo $this->Form->button('Save and next drug', array('type'=>'button','id'=>'save_move_next')); ?>
JS功能:
$(document).ready(function(){
$("#save_move_next").click(function(){
var drug_id = $(this).val();
if(drug_id.length > 0)
{
window.location = "<?php echo Router::url(array('controller' => 'french_translations', 'action' => 'next'), true) ?>/" + drug_id;
}
});
});
在default.thtml中的頭:
echo $javascript->link('save_move_next');
您運行的是什麼版本的CakePHP的? – Dave
@Dave CakePHP 1.3 – Jonathan
你想通過使用'submit'類型的按鈕來達到目的。通過HTML定義,提交按鈕將表單數據提交給表單的指定'action'屬性,沒有例外!你描述的內容需要「常規」按鈕(非提交)以及與之綁定的點擊事件,就像gvLearner在他的回答中所表明的那樣。 – Oldskool