2013-10-11 122 views

回答

1

你可以給第二提交按鈕HTML名稱,然後檢查是否存在該名稱在POST語句設置。

<input name="back" type="submit" value="Go Back"> 
<input name="next" type="submit" value="Continue"> 
+0

是的,我想到了,但你看客戶想這是我的答案已經解釋的其他方式,兩種不同的行爲,對此有什麼影響? 我應該感謝您寶貴的時間 –

+0

您是否反對使用Javascript提交表單並讓它監聽被點擊的錨標籤? – smcgovern

+0

我想在不使用javascript的情況下完成它,但如果沒有其他方式,那麼這將是我最後的選擇 –

0

你可能需要使用jQuery來實現它。當你構建表單時,完全忽略該方法。然後,給你兩個按鈕和id

<button id="submit-1">Submit 1</button> 
<button id="submit-2">Submit 2</button> 

然後,使用jQuery.postjQuery.ajax提交表單數據。

請參閱以下文章的詳細信息:

  1. http://api.jquery.com/jQuery.post/
  2. http://api.jquery.com/jQuery.ajax/
+0

我想在不使用javascript的情況下完成它,但如果沒有其他方法,那麼這將是我最後的選擇當然是 感謝您的時間 –

0

這可能是最簡單的"flash"數據。

在你的路線:

Route::post('/test', '[email protected]'); 
Route::get('/test', '[email protected]'); 
Route::any('/testSubmit1Action', function() 
{ 
    var_dump(Input::old()); 
}); 

然後你的TestController:

class TestController extends BaseController { 

    public function postTest() 
    { 
     // Refer to getTest() below for how these buttons are named. 
     // We can check for the existence of a certain button and process 
     if(Input::has('submit1')) 
     { 
      // Redirect to different route/URI 
      Input::flash(); 
      return Redirect::to('/testSubmit1Action'); 

      // Alternatively, you could process action 1 here 
     } 

     if(Input::has('submit2')) 
     { 
      // Process action 2 
     } 
    } 

    public function getTest() 
    { 
     // I recommend putting this in a view/blade template 
     // eg... return View::make('foo.bar'); 
     echo Form::open(); 
     echo Form::submit('Submit Action 1', array('name' => 'submit1')); 
     echo Form::submit('Submit Action 2', array('name' => 'submit2')); 
     echo Form::close(); 
    } 

}