2017-09-04 83 views
-1

大家好我想问你一个关于Laravel的问题我是一名学生,刚刚学习laravel。我有一个名为休假类型这样的选择框:关于更改值的选择框Laravel

<select class="form-control" id="leave_type" name="LEAVECODE"> 
            @foreach($leaveTypes as $leaveType) 
             <option value="{{$leaveType- 

>CODE}}">{{$leaveType->DESCRIPTION}}</option> 
             @endforeach 
            </select> 

然后休假类型选择更改后,我有选择离开的平衡,然后我想显示在其他文本框,离开平衡的功能。

public function getLeveBalance($leaveType,$empcode) 
    { 
      $leaveBalance = LeaveBalance::where('EMPCODE', $leaveType)->where('EMPCODE', $empcode)->where('INYEAR', '2017')->select('YTD')->first(); 
      return $leaveBalance; 
    } 
+0

你的问题不清楚。更好地解释你想要的。 –

+0

@妮雅问题不清楚。你是说组合框还是下拉列表框? – kaviranga

+0

我想他想要在处理后使用基于选择框选项的值填充文本框。 –

回答

0

head中添加该

<meta name="_token" content="{{ csrf_token() }}" /> 

添加这个AJAX脚本

$(document).ready(function() { 
    $("#leave_type").change(function(){ 
     var selectOption = $("#leave_type option:selected").val(); 

     $.ajaxSetup({ 
      headers: { 
       'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') 
      } 
     }); 

     $.ajax({ 
      method: 'POST', 
      data: { selectOption: selectOption }, 
      url: '/abc', //**Eg. URL in route 
      success: function(response){ 
       if(response.success) { 
        $('#YourOtherTextBoxID').text(response.leaveBalance); 
        alert('success'); 
       }  
      }, 
     }); 
    }); 
}); 

创建一个新的路径:如:

Route::post('/abc', '[email protected]'); 

YourController

public function funcName(Illuminate\Http\Request $request) 
    { 
     $leaveType = $request->selectOption; //**Your selected option 

     // Do your DB processing 
     // $this->getLeveBalance($leaveType, $empcode); 
     // I assume $leaveBalance contains the value you need to show in OtherTextBox 

     return response()->json(['success' => true, 'leaveBalance' => $leaveBalance]); 
    } 
} 

希望它有帮助。