【问题标题】:javascript select city from selected country valuejavascript 从选定的国家/地区值中选择城市
【发布时间】:2012-07-18 09:06:26
【问题描述】:

我有来自这里的国家/地区数据库http://www.webmasterworld.com/html/3018309.htm 有239个国家,每个国家都有价值。在选项中选择了另一个国家后,如何使用新值的区域更新区域列表?

$country_query = mysql_query("SELECT * FROM country WHERE status = '1' ORDER BY name ASC");
$zone_query = mysql_query("SELECT * FROM zone WHERE country_id = '" . (int)$country_id . "' AND status = '1'");

<select name="country_id">
          <option value=""><?php echo '$text_select;' ?></option>
          <?php while ($country=mysql_fetch_array($country_query)) { ?>
          <?php if ($country['country_id'] == $country_id) { ?>
          <option value="<?php echo $country['country_id']; ?>" selected="selected"><?php echo $country['name']; ?></option>
          <?php } else { ?>
          <option value="<?php echo $country['country_id']; ?>"><?php echo $country['name']; ?></option>
          <?php } ?>
          <?php } ?>
</select>

【问题讨论】:

  • 到目前为止你有什么 javascript 代码?
  • 你能把渲染后的 HTML 与国家和地区下拉列表一起发布吗?
  • 对不起,我还没有js,但我知道我需要它,可以在选择国家后从db中选择刚刚需要的项目,按国家ID的值。
  • stackoverflow.com/questions/11242974/… 请访问此网址对您有帮助

标签: php javascript jquery ajax json


【解决方案1】:

第一次默认加载县列表.. 加载区域使用这个

<select name="country" id='country'>
          <option value=""><?php echo '$text_select;' ?></option>
          <?php while ($country=mysql_fetch_array($country_query)) { ?>
          <?php if ($country['country_id'] == $country_id) { ?>
          <option value="<?php echo $country['country_id']; ?>" selected="selected"><?php echo $country['name']; ?></option>
          <?php } else { ?>
          <option value="<?php echo $country['country_id']; ?>"><?php echo $country['name']; ?></option>
          <?php } ?>
          <?php } ?>
</select>

这里需要在国家改变时调用ajax

jQuery :

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){

    $('#country').change(function(){

        $.post('ajax/getZones', 
                   {Country : $('#country').val()}, 
                   function(response){
                     //prepare the zones html code
                     //write that code to zone dropdown 
                  }, 'json');

    });

});
</script>

这里'ajax/getZones'指的是getZonesajax控制器中的方法

getZones(ajax) 中编写 getZones 查询 在 ajax 控制器中使用 $_POST['Country'] 获取 Country id

尝试实现 ajax 控制器一切正常..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    • 1970-01-01
    • 2019-02-15
    • 2017-08-27
    相关资源
    最近更新 更多