2015-09-22 52 views
0

我在我的形式像使用Ajax獲得從數據庫表單中的值提交laravel

<form class="form-horizontal form-bordered" method="post" action="formaction"> 
    <div class="form-group"> 
    <label class="col-md-3 control-label" for="inputSuccess">Amount</label> 
     <div class="col-md-6"> 
      <select class="form-control mb-md" name="amount" id="amount"> 
        <option value="10"> 10</option> 
        <option value="20">20</option> 
        <option value="30">30</option> 
        <option value="40">40</option> 
        <option value="50">50</option> 
      </select> 
     </div> 

     <div class="input-group mb-md"> 
      <button type="submit" class="btn btn-warning btn-sm">Submit</button> 
     </div> 
</form> 

<script> 
     $("#sub").click(function(){ 
      $.ajaxSetup({ 
       headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') } 
      }); 


      var selectedVal= $("select option:selected").val(); 
      return $.ajax({ 
       type: 'GET', 
       url: 'getdollarvalue', 
       dataType: 'json', 
       contentType: "application/json; charset=utf-8", 
       data: { 
        "value": selectedVal 
       }, 
       success: function(response){ 

        return alert(response); 
       } 
      }); 
     }); 
    </script> 

一個選擇列表和我在數據庫中的一個表,用於存儲相應的值來選擇下拉值一樣

id  value   conversion 
1   10   0.2 
2   20   0.32 
3   30   0.43 
4   40   0.77 

routes.php

Route::get('getdollarvalue/{value}', [ 
     'as' => 'getdollarvalue', 'uses' => '[email protected]' 
    ]); 

和我controller

public function getResult(){ 
     $result = Input::get('value'); 

     return $result; 
    } 

現在,當我提交我的形式,我想向用戶顯示其在alert選擇一個相應的值。例如,如果用戶從下拉列表中選擇20,則在submitting表格中,用戶應該看到相應的20轉換,即在這種情況下0.32處於警報狀態。我知道我必須爲此執行ajax,我只是不明白如何實現它。請通過這個指導我。

回答

1

HTML:

<form class="form-horizontal form-bordered" method="post" action="formaction"> 
<div class="form-group"> 
<label class="col-md-3 control-label" for="inputSuccess">Amount</label> 
    <div class="col-md-6"> 
     <select class="form-control mb-md" name="amount" id="amount"> 
       <option value="10"> 10</option> 
       <option value="20">20</option> 
       <option value="30">30</option> 
       <option value="40">40</option> 
       <option value="50">50</option> 
     </select> 
    </div> 

    <div class="input-group mb-md"> 
     <button type="submit" id="sub" class="btn btn-warning btn-sm">Submit</button> 
    </div> 
</form> 

腳本:

<script> 
$("#sub").click(function(){ 
var selectedVal= $("select option:selected").val(); 

    $.ajax({ 
     type:"GET", 
     url: "api/URL",//put y 
     data:{ val:selectedVal}, 
     contentType: "application/json; charset=utf-8", 
     dataType: "Json", 
     success: function(result){ 
      alert(result.conversion); // Note Send the Json Object from the server side 
     } 

     }); 
}); 
</script> 
+0

我不能夠發佈選擇的下拉列表值到我的控制,我應該怎麼辦呢? – Sid

+0

請檢查您發送到服務器的參數,它應該是相同的,即{val:selectedVal}參數'val'應該出現在即將接到呼叫的Model類中 – VizardCrawler

+0

我已經更新了我的問題,請有一看,並幫助我擺脫這一點。:) – Sid