选择器附加html

时间:2017-02-12 11:35:22

标签: jquery html

我正在尝试将我的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>');
                        });
                    }
                });
            });

2 个答案:

答案 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;
        });