我正在尝试将我的ajax中的数据附加到类kota中。 我的ajax没有错误,但追加不起作用。 问题出在我的$(this).parents()。next()。children('。kota')?
HTML:
<div class="col-md-3 form-group">
<select id="propinsi" required="required" placeholder="Provinsi" name="propinsi" class="form-control propinsi">
<option value="" selected disabled>--PilihProvinsi--</option>
</select>
</div>
<div class="col-md-3 form-group">
<select id="kota" required="required" placeholder="Kota/Kab" name="kota" class="form-control kota">
<option value="" selected disabled>--Pilih Kota/kab--</option>
</select>
</div>
我的js:
$('.propinsi').change(function(){
var val = $('.propinsi').val();
$(this).parents().next().children('.kota').empty();
$.ajax({
url: site_url+"Master/runkab/"+val,
dataType: 'JSON',
success: function (data) {
$.each(data, function (i, valu) { $(this).parents().next().children('.kota').append('<option value="' + valu.id_kab + '">' + valu.kota + '</option>');
});
}
});
});
答案 0 :(得分:0)
您需要将$(this)
分配给变量
$('.propinsi').change(function(){
var $this = $(this);
var val = $this.val();
$this.parents().next().children('.kota').empty();
$.ajax({
url: site_url+"Master/runkab/"+val,
dataType: 'JSON',
success: function (data) {
$.each(data, function (i, valu) { $this.parents().next().children('.kota').append('<option value="' + valu.id_kab + '">' + valu.kota + '</option>');
});
}
});
});
答案 1 :(得分:0)
试试这个:
$('#propinsi').change(function(){
var val = $(this).val();
var route = site_url+"Master/runkab/"+val;
$.ajax({
type: "POST",
url: route,
dataType: 'JSON',
success: function(data) {
// Remove current options
$('#kota').html('');
$.each(data, function(k, v) {
$('#kota').append('<option value="' + v + '">' + k + '</option>');
});
}
});
return false;
});