2016-11-29 74 views
-1

我想使用Bootstrap模式將一些數據插入到數據庫中。但問題是保存按鈕在引導模式下無法正常工作,因爲我無法通過表單將數據插入到數據庫中。如果有人可以幫我找到它!?Laravel:使用Bootstrap模式將數據插入數據庫

這裏是葉片的組成部分:

<div id="myAlert" class="modal hide"> 
    <div class="modal-header"> 
     <button data-dismiss="modal" class="close" type="button">×</button> 
     <h3>Create User</h3> 
    </div> 
    <div class="modal-body"> 
     <div class="row-fluid"> 
      <div class="span12"> 
       <div class="widget-box"> 
        <div class="widget-content nopadding"> 
         <form action="#" method="get" id="userForm" class="form-horizontal"> 
          <div class="control-group"> 
           <label class="control-label">Name :</label> 

           <div class="controls"> 
            <input class="span11" placeholder="Name" type="text"> 
           </div> 
          </div> 
          <div class="control-group"> 
           <label class="control-label">Email :</label> 

           <div class="controls"> 
            <input class="span11" placeholder="Email" type="email"> 
           </div> 
          </div> 
          <div class="control-group"> 
           <label class="control-label">Password</label> 

           <div class="controls"> 
            <input class="span11" placeholder="Enter Password" type="password"> 
           </div> 
          </div> 
          <div class="control-group"> 
           <label class="control-label">Confirm Password</label> 

           <div class="controls"> 
            <input class="span11" placeholder="Confirm Password" type="password"> 
           </div> 
          </div> 
         </form> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
    <div class="modal-footer"><a data-dismiss="modal" class="btn btn-primary" href="#">Confirm</a> <a 
       data-dismiss="modal" class="btn" href="#">Cancel</a> 
    </div> 
</div> 

這裏是阿賈克斯部分:

$('#userForm').on('success.form.fv', function(e) { 
     e.preventDefault(); 

     $.ajax({ 
      method: 'POST', 
      action:"{{ url('/register') }}", 
      data: $form.serialize() 
     }); 
    }); 
+0

怎麼樣的控制? – jycr753

+0

基本認證我已經使用..註冊controller.the問題是保存按鈕不起作用。意味着什麼都沒有發生,當我點擊該按鈕 – Hola

回答

0

您需要提交按鈕。嘗試將此代碼放入您的表單中。

<button type="submit" class="btn btn-primary">Register</button> 

問題與您現有的確認鍵是:1)他沒有type=submit; 2)他在表格之外。

0

首先添加type="submit"到您的按鈕

其次檢查您的網絡標籤在你的瀏覽器開發者工具和檢查要求它去/register與否? 如果請求打/register是什麼參數?在刀片

0

組成部分:

<div class="modal-footer"><a data-dismiss="modal" class="btn btn-primary" id="btnAdd">Confirm</a></div> 

阿賈克斯部分

 $('#btnAdd').click(function() { 
      $.ajax({ 
       url: '{{url('/register')}}', 
       type: 'POST', 
       data: $('#userForm').serialize(), 
       success: function (object) { 

       }, 
       error: function (result) { 

       } 
      }); 
     }); 
+0

我已經使用你的解決方案。現在控制檯沒有錯誤,但沒有提交數據。 – Hola

+0

@Hola對我來說工作得很好,你可以展示給後面的代碼。 –

0

你的輸入類型元素缺少name屬性

<input class="span11" placeholder="Name" name="name" type="text"> 

<input class="span11" placeholder="Email" name="email" type="email"> 

<input class="span11" placeholder="Enter Password" name="password" type="password"> 

<input class="span11" placeholder="Confirm Password" name ="confirm_password" type="password"> 

然後,使用請求或輸入通過傳遞name屬性

0

的價值首先改變你的形式方法檢索內容從得到。然後添加ID爲btnSave的保存按鈕。 阿賈克斯:

$("#btnSave").click(function(e){ 
    e.preventDefault() 
    var $form = $("#userForm"); 
    $.ajax({ 
     type: $form.attr('method'), 
     url: $form.attr('action'), 
     data: $form.serialize(), 
     success: function (data, status) { 
      if(data.error){ 
       return; 
      } 
      alert(data.success); // THis is success message 
      $('#myModal').modal('hide'); // Your modal Id 
     }, 
     error: function (result) { 

     } 
    }); 

}); 

在控制器:

public function store(Request $request) 
{ try { 
    $inputs = $request->all(); 
    ModelName::create($inputs); 
    $data = ['success' =>'Data saved successfully'];   
    } catch (\Exception $e) { 
     $data = ['error' =>$e->getMessage()];   
    }   
    return Response::json($data);  
}