Php 附加选项选择Ajax
我有3个依赖选项选择,我正尝试根据之前的选择使用AJAX进行填充,但我不能 我用的是拉威尔,这部分看起来还可以 HTML:Php 附加选项选择Ajax,php,ajax,laravel,Php,Ajax,Laravel,我有3个依赖选项选择,我正尝试根据之前的选择使用AJAX进行填充,但我不能 我用的是拉威尔,这部分看起来还可以 HTML: <div class="form-group col-md-3"> {!! Form::label('country', 'Seleccione el País') !!}</br> <select name="country" id="country" class="form-control country" >
<div class="form-group col-md-3">
{!! Form::label('country', 'Seleccione el País') !!}</br>
<select name="country" id="country" class="form-control country" >
<option value="" disabled selected>Paises</option>
@foreach($countries as $country)
<option value="{{$country->id}}">{{$country->name}}</option>
@endforeach
</select>
</div>
<div class="form-group col-md-3">
{!! Form::label('prov', 'Seleccione la Provincia') !!}</br>
<select name="province" id="province" class="form-control province">
<option value="" disabled>Provincias</option>
</select>
</div>
<div class="form-group col-md-3">
{!! Form::label('county', 'Seleccione el Partido') !!}</br>
<select class="form-control" name="county" id="county">
<option value="" disabled >Partido</option>
</select>
</div>
<div class="form-group col-md-3">
{!! Form::label('locality', 'Seleccione la Localidad') !!}</br>
<select class="form-control" name="locality" id="locality">
<option value="" disabled >Localidad</option>
</select>
</div>
<script type="text/javascript">
$(document).ready(function(){
$(document).on('change','.country',function(){
//console.log("hmm its change");
var country_id=$(this).val();
// console.log(country_id);
var select=$(this).parent();
console.log(select);
var op=" ";
$.ajax({
type:'get',
url:'{{ URL::route('findProvince') }}',
data:{'id':country_id},
success:function(data){
//console.log(url);
//console.log(data);
//console.log(data.length);
op+='<option value="0" selected disabled>Selecciona La Provincia</option>';
for(var i=0;i<data.length;i++){
op+='<option value="'+data[i].id+'">'+data[i].name+'</option>';
//console.log(op);
}
select.find('.province').html(" ");
select.find('.province').append(op);
//console.log(op);
},
error:function(){
}
});
});
});
</script>
但是我不能用生成的选项填充select。谢谢。存储在select
变量中的$(this.parent()
将引用.country
标记的父div
,当您尝试selec.find(.province”)
时,选择器将找不到元素,因为div中没有包含province
类的元素,我的建议是使用id
(应该是唯一的)针对select,方法是:
然后替换:
select.find('.province').html(" ");
select.find('.province').append(op);
作者:
选择属于当前选择的下拉列表,使用idZakaria为slector创建的第二个下拉列表!!!总的来说,这不是我最喜欢的东西,我只知道一点ajax,但你是个天才!!!!这个解决方案非常有效!!!谢谢!!现在我将尝试将此复制到其他选择。再次感谢!!!
var select = $("#province");
select.find('.province').html(" ");
select.find('.province').append(op);
select.html(op);