4

Jquery Select2 スクリプトhttp://ivaynberg.github.io/select2/#ajaxを使用しています。

私は2つのドロップダウンリストを持っています - 地域の最初の選択 - 都市の2番目の選択

質問: 最初の選択 (静的コンテンツ) から 2 番目の選択 (動的コンテンツ Ajax) に変数を渡す方法

2 番目の選択では、選択した 1 つの地域のデータのみをロードしたいと思います。最初は、2 番目の選択は無効になっています。ユーザーがリージョンを選択すると、2 番目の選択が有効になります。

HTML コード

<div class="control-group"><label class="control-label">Region</label>
 <div class="controls">
  <select id="region" name="region">
     <option value="">Select region</option>
     <option value="1">Region 1</option>
     <option value="2">Region 2</option>
  </select>
 </div>
</div>

<input type="hidden" id="city" name="city" class="input-xlarge" data-placeholder="Choose An Option.." /> 

JavaScript:

<script type="text/javascript">     
$(document).ready(function() {  

var $region = $('#region'); 
var $city = $('#city');

$region.change(function() {
    if ($region.val() == '') {
        $city.attr('disabled', 'disabled').val('');
        $("#city").select2("enable", false);
    } else {
        $("#city").select2("enable", true);
    }
}).trigger('change');
});


$('#city').select2({
    minimumInputLength: 2,
    ajax: {
        url: "index.php?modul=data&reg=2",
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        data: function (term, page) {
            return {
                q: term,
            };
        },
        results: function (data, page) {
            return { results: data };
        }
    }
});
</script>

最初の選択から変数「reg」に値を渡す必要があります index.php?modul=data®=2 index.php?modul=data®=2&q=cityname

4

1 に答える 1

1

ここで私はそれをした方法

  $("#adv_category").bind("change",function() {


 var adv_category =$("#adv_category option:selected").val();

var datString= 'adv_category='+ adv_category;
        //alert (dataString);return false;

$.ajax({
      type: "POST",
      url: "subcategory_type_format.php",
      data: datString,
      success: function(data) {
        //alert(data);
        //dyTable(data);
         $("#advsub_category").html(data).select2();

        },
        error: function() {
        alert("TimeOut error !");
       var url_r = "index.php";    
window.location.href = url_r;
   }
});
   return false;
    });

そして開始時に2番目の選択にはオプションがありません。

于 2013-12-02T12:55:44.223 に答える