2017-11-25 131 views
0

我需要從add.blade.php發送的<input type='CHIPS'>LARAVEL:如何從視圖的數據發送到控制器

一個值,以[email protected]

這是代碼add.blade.php文件:

<div class="container"> 
     <form method="POST" action="{!! url('add') !!}" id="ajouter" accept-charset="UTF-8"> 

      <label for="nom">Entrez votre nom : </label> 
      <input name="name" type="text" id="name"> 

      <input name="email" type="email" id="email"> 

      <input name="password" type="password" id="password"> 

      <label for="permution">saisier les parmutions : </label> 

      <div class="chips" name="permution"></div> 

      <input class="btn-info" type="submit" value="Envoyer !"> 

      <div id="permution" name="permution"> 

      </div> 

     </form> 
    </div> 

,這是scripteadd.blade.php文件: 在那裏我得到了chips_form數據和我將它們設置在

<!--Import jQuery before materialize.js--> 
    <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
    <script type="text/javascript" src="css/materialize/js/materialize.min.js"></script> 


    <script> 
     $(function() { 

      var data = $('.chips').material_chip(); 
      var dataString = JSON.stringify(data); 

     }); 
    </script> 

route.php文件 String類型的新值:

Route::get('/add', '[email protected]_form'); 
Route::post('/add', '[email protected]'); 

UserController中.php file:

public function add_form() 
     { 
      return view('add'); 
     } 


     public function add(Request $request) 
     { 
      $name = $request->input('name'); 
      $email=$request->input('email'); 
      $password = $request->input('password'); 
      $cryptPassword= bcrypt($password); 

      //Insert SQL Request 
} 
+0

你將需要一個'input'字段和'name'芯片。 – Laerte

+0

這是基本的。閱讀文檔。很簡單。肯定這個線程是在stackoverflow的某處。 –

+0

@Laerte我需要發送「var dataString」給控制器並在那裏使用 – aladin

回答

1

T o將dataString的contenct發送到控制器,您可以在表單中創建一個隱藏的輸入,並使用jQuery設置它的值。

首先,添加一個輸入到表單:

<input id="ichips" type="hidden" name="chips"> 

然後,設置使用jQuery它的值:

var data = $('.chips').material_chip(); 
var dataString = JSON.stringify(data); 
$("#ichips").val(dataString); 

當用戶發送的形式,則該值將是在隱藏輸入。

+0

我試了一下,當我提交我的表單時,我得到的值爲「ichips」 PS:我向控制器添加了'dd($ request-> all())', 和之前提交我填寫芯片表格。 – aladin

+0

要進行測試,請將代碼更改爲'$(「#ichips」).val(「TEST」);'並檢查值是否存在於dd($ request-> all());'中。 – Laerte

+0

是的我檢查它,測試是存在的(我得到'芯片'=>''測試''),但是當我檢查它與dataString我得到''ichips''=>'''' – aladin

相關問題