我不得不在textbox上显示数据来更改select框,但是它不起作用&还控制不进入ajaxurl。
html代码:
<select class="form-control" name="product_title" id="product_title">
@foreach($product_title as $id => $p_title )
<option value="{{ $id }}">{{ $p_title }}</option>
@endforeach
</select>
<input type="text" class="form-control" name="product_price" id="product_price">
<input type="text" class="form-control" name="product_quantity" id="product_quantity">
js公司:
<script>
$(document).ready(function(){
$("#product_title").change(function(){
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
}
});
jQuery.ajax({
url: "{{ url('/productdetails') }}",
method: 'get',
data: {
id: jQuery('#product_title').val()
},
success: function(result){
jQuery('#product_price').html(result.product_price);
jQuery('#product_quantity').html(result.product_quantity);
}});
});
});
</script>
route:route::get('/productdetails','productcontroller@getproduct');
public function getProduct(Request $req)
{
$product = product::find($req->id)->first(); // Product is the model
//dd($product);
if ($product)
{
return response()->json(['product_price' => $product->product_price,'product_quantity' => $product->product_quantity]);
}
}
数据库表名是具有属性id、产品标题、产品价格、数量的产品。当我从选择框中选择标题值相关值产品价格时,数据库中的数量将显示在文本框中。
2条答案
按热度按时间f4t66c6m1#
看起来问题出在成功功能行上。
html
不适用于为文本赋值。它用于回显html。相反,你可以使用val()
喜欢跟在后面。jQuery('#product_price').val(result.product_price); jQuery('#product_quantity').val(result.product_quantity);
希望有帮助。快乐的编码。gwbalxhn2#
您可以使用simple而不使用jquery,如下所示