2016-05-02 105 views
0

我在Laravel和Bootstrap-Modal中遇到了一個問題。Laravel Bootstrap-Modal TokenMismatch

簡單的模態的偉大工程,但是當我使用「基於變模態內容」, 我得到一個錯誤:

這劇本我Mainside:

$('#renameModal').on('show.bs.modal', function (event) { 
     var button = $(event.relatedTarget) 
     var recipient = button.data('entity_input') 
     var entity = button.data('entity') 
     var modal = $(this) 
     modal.find('.modal-body input').val(recipient) 
    }) 

產生這個錯誤:

TokenMismatchException in VerifyCsrfToken.php line 67

我也行:{!! csrf_field() !!}在我的代碼,但是當我 使用JQuery -Script,它母鹿不工作。

任何人都知道如何解決問題??

模態代碼:

<div class="modal fade" id="renameModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 
    <div class="modal-dialog" role="document"> 
     <div class="modal-content"> 
        <div class="modal-header"> 
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
        <h4 class="modal-title" id="myModalLabel">Umbenennen</h4> 
        </div> 
        <div class="modal-body"> 
        <form action="{{ url('user_rename/'.$user[0]->id) }}" method="POST"> 
         {!! csrf_field() !!} 
         <input type="text" class="form-control" id="recipient-name"> 
        </div> 
        <div class="modal-footer"> 
        <button type="button" class="btn btn-default" data-dismiss="modal">Abbrechen> 
        <button type="submit" id="rename-user{{ $user[0]->id }}" class="btn btn-primary">Speichern</button> 
        </div> 
        </form> 
       </div> 
       </div> 
      </div> 

Sry基因的格式錯誤;-(

+0

向我們展示模態代碼 –

+0

如果您將網址修改爲/ user_rename而不是user_rename,它會改變嗎? –

+0

不,同樣的錯誤。 – user3577135

回答

0

這是因爲你改變了隱藏CSRF標記的值

modal.find('.modal-body input').val(recipient) 

{! !csrf_field()!!}產生類似這樣的內容,並且位於您的輸入#收件人名稱以上

<input type="hidden" name="_token" value="some-random-token"> 

在您的Javascript更改modal.find('.modal-body input')modal.find('.modal-body input#recipient-name')。值得注意的是,您還沒有給出收件人姓名輸入的實際字段名稱。