我正在做这件事:
jQuery("#country_id").change(function() {
id = jQuery("#country_id").val();
jQuery.ajax({
type: "GET",
url: 'index.php?option=com_jomdirectory&task=getprovince&format=raw&type=province',
dataType: "html",
data: "id=" + id,
success: function(data) {
jQuery('#provincelist').html(data).find('select').addClass("form-control chosen-select").chosen();
}
});
});
问题是,这并没有绑定到文档,所以当我尝试启动下一个ajax调用(检索城市列表)时,
我基本上有3个选择:
1) Country-onchange启动ajax调用以获取省份(这很有效,并为我提供了省份选择列表)
2) 然后在更改省份时,它应该为城市选择发出ajax调用
3) 城市ajax呼叫未启动。
我该如何将结果绑定到文档中,这样我就可以在更改时启动下一个ajax调用,而不会过多地处理这段代码?
谢谢,
J
@PraveenKumar我的下一个ajax调用不会启动,因为它本身就是ajax调用的结果。我基本上有三个选择:1)国家->省->城市,当我更改国家(省份选择显示),但当我更改省份时,不会发生任何事情-ajax对city的呼吁没有被激发。
您需要使用省份选择的事件委派。
jQuery("#provincelist").on('change', '#province_id', function() {
当您使用jQuery('#provincelist').html(data)
替换select时,您将丢失省select上的更改事件,因为您正在替换整个元素。