这个Jquery脚本出了什么问题?

时间:2012-07-19 22:50:48

标签: php ajax jquery

一旦用户使用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&regionId="; ?>' + regionId;

  $.ajax({
  type: "GET"
  url: url,
  dataType: 'json',
  success: function(msg){
  if (msg != ”){
  $("#cityId").html(msg).show();

  }

  }
  });
  });
  });
  </script>

问题是,在选择一个地区时,城市下降选择不会被填充......无法弄明白......任何帮助都会受到赞赏。

3 个答案:

答案 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>