CakePHP表单上的多个提交按钮会导致黑洞

时间:2014-01-15 22:01:08

标签: php cakephp

我的CakePHP中有一个表单,有两个提交按钮,如下所示:

<div class="form-actions">
    <button type="submit" name="preview" class="btn btn-large">Preview</button>
    <button type="submit" name="save" class="btn btn-large">Save</button>
</div>

但是因为我已经给他们两个名字,所以它会返回一个错误,由于安全限制,请求已被黑洞化。

我如何解决这个问题?因为我想在控制器中做不同的事情,这取决于用于提交表单的按钮。

3 个答案:

答案 0 :(得分:1)

如果你给它们同名但不同的值,它是否有效:

<input type="submit" name="submitButton" value="Preview" />
<input type="submit" name="submitButton" value="Save" />

答案 1 :(得分:1)

你可以这样做吗?

    <div class="form-actions">
        <button type="button" name="preview" class="btn btn-large">Preview</button>
        <button type="submit" name="save" class="btn btn-large">Save</button>
    </div>

$(function() {
     $(".btn.btn-large").on("click", function(){
           $( "#yourForm" ).submit();
     }); 
});

答案 2 :(得分:0)

这样做有效:

<?php 
echo $this->Form->submit('Save and Preview', array('div'=>false, 'name'=>'submit', 'value'=>'preview')); 
echo $this->Form->submit('Publish Post', array('div'=>false, 'name'=>'submit', 'value'=>'publish')); 
?>