一旦用户使用Jquery / Ajax功能选择状态,尝试填充城市的下拉列表
HTML表单有...
<?php $allRegions = Region::newInstance()->getStatesByCountry('US'); ?>
<select name="regionId" id="regionId">
<?php foreach($allRegions as $region) { ?>
<option value="<?php echo $region['value'] ; ?>"><?php echo $region['name'] ; ?></option>
<?php } ?>
</select>
<select name="cityId" id="cityId">Choose a city</select>
Jquery代码......
$(document).ready(function(){
$("#regionId").change( function() {
var regionId = $(this).val();
var url = '<?php echo site_base_url(true)."?page=ajax&action=cities®ionId="; ?>' + regionId;
$.ajax({
type: "GET"
url: url,
dataType: 'json',
success: function(msg){
if (msg != ”){
$("#cityId").html(msg).show();
}
}
});
});
});
</script>
问题是,在选择一个地区时,城市下降选择不会被填充......无法弄明白......任何帮助都会受到赞赏。
答案 0 :(得分:3)
一个问题是你有一个奇怪的引用字符:
if (msg != ”){
你可能是这个意思:
if (msg != ''){
答案 1 :(得分:2)
另一个问题是:
type: "GET"
应该是:
type: "GET",
答案 2 :(得分:0)
不要太粗鲁,但你的代码非常嵌套,而且不必要复杂。 修复上面提到的所有提及,以及:
<?PHP
foreach($allRegions as $region) {
<option value="<?php echo $region['value'];" . "><" . echo $region['name']; .
"</option>" } ?>
</select>