Выберите зависимый раскрывающийся список с помощью jQuery ajax и покажите выбранное значение.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Выберите зависимый раскрывающийся список с помощью jQuery ajax и покажите выбранное значение.

Сообщение Anonymous »

Я хочу получить стоимость каждого lab_test индивидуально, но это дает мне все затраты. Я пробовал использовать ->first(); и ->first(['стоимость']); в контроллере, но получаю ошибку типа «Содержимое ответа должно быть строкой или объектом, реализующим __toString(), задан «объект».».
Я реализую раскрывающийся список зависимостей в своем проекте.


Controller Test.php


Код: Выделить всё

class Test extends Controller
{
public function cost(Request $request){
$lab_data = \DB::table('lab_category')->select('lab_category_id','category_name')->get();
return view('pages/medicinecost')->with('lab_category',$lab_data);
}

public function costSub(Request $request){
$get_lab_cat_id = $request->get('labCategId');
$lab_sub_data = \DB::table('lab_sub_category')
->leftJoin('lab_category','lab_category.lab_category_id','=','lab_sub_category.category_id')
->where('lab_category_id', $get_lab_cat_id)
->select('sub_category_name','lab_sub_category_id')->get();
return $lab_sub_data;
}

public function costTest(Request $request){
$get_lab_sub_id = $request->get('labSubId');
$lab_test_data = \DB::table('lab_test')
->leftJoin('lab_sub_category','lab_sub_category.lab_sub_category_id'
,'=','lab_test.sub_category_id')
->where('sub_category_id',$get_lab_sub_id)
->where('hide',0)
->select('lab_name','lab_test_id')->get();
return $lab_test_data;
}

public function labTestprice(Request $request){
$get_lab_test_id = $request->get('labtid');
$cost = \DB::table('lab_test')
->leftJoin('lab_sub_category','lab_sub_category.lab_sub_category_id','=','lab_test.sub_category_id')
->where('lab_test_id',$get_lab_test_id)
->orWhere('hide',0)
->select('cost','lab_test_id')->get();
//  dd($cost);
return $cost;
}
}

Route.php

Код: Выделить всё

Route::get('labdetails','Test@cost');
Route::post('get_lab_sub','Test@costSub');
Route::post('get_lab_sub_cat','Test@costTest');
Route::post('get_lab_cost_rs','Test@labTestprice');

medicinecost.blade.php

Код: Выделить всё

 

Lab Cost





Select Lab Category
@if(isset($lab_category))
@foreach($lab_category as $lb)
{{$lb->category_name}}
@endforeach
@endif



Select Lab Sub Category



Select Lab Test


[/i]






$(document).ready(function() {

$('#labC').on('change', function(){
var labCategId = $(this).val();
if(labCategId) {
$.ajax({
processing : 'true',
serverSide : 'true',
url: 'get_lab_sub',
type:"POST",
data :  {labCategId:labCategId,"_token":"{{ csrf_token() }}"},
dataType:"json",

success:function(data) {
if(data){
$('#labS').empty();

$.each(data, function(key, value){
$('#labS').append('' + value.sub_category_name + '');

});
}

},

});
} else {
$('select[name="labS"]').empty();
}

});

$('#labS').on('change' ,function () {
var labSubId = $(this).val();
if(labSubId){
$.ajax({
processing : 'true',
serverSide : 'true',
url :'get_lab_sub_cat',
type:"POST",
data :{ labSubId:labSubId,"_token":"{{ csrf_token() }}"},
dataType: "json",
success:function (data) {
if(data){
$('#labT').empty();
$.each(data, function(key, value){

$('#labT').append('' + value.lab_name + '');

});
}
else {
$('#labT').empty();
}
}
});
}

})
$('#labT').on('change' ,function () {
var lab_test_cost_id = $(this).val();
if(lab_test_cost_id){
$.ajax({
processing : 'true',
serverSide : 'true',
url :'get_lab_cost_rs',
type:"POST",
data :{ labtid:lab_test_cost_id,"_token":"{{ csrf_token() }}"},
dataType: "json",
success:function (data) {
if(data){
//$('#labT').empty();
$.each(data, function(key, value){
$('#testCost').append('
 '+ value.cost + '
');
//$('#testCost').append('
'+value.cost+'
');
});
}
}
});
}
});

});


Всякий раз, когда я выбираю lab_test из третьего раскрывающегося списка, он должен отображать стоимость этого Perticuler lab_tests, но вместо этого отображаются все затраты.

Подробнее здесь: https://stackoverflow.com/questions/531 ... cted-value
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»