CakePHP中的国家/州下拉列表

use*_*518 2 cakephp

如何使用表单助手处理视图中的从属组合框.例如:

国家选择框(选择国家/地区将过滤掉所选国家/地区的状态)状态选择框

这应该在Javascript/Jquery等的帮助下发生.我遇到了与Cake的核心AJAX帮助器相同的示例,但如果有人可以帮助使用Javascript示例,那将是非常好的.

谢谢

gon*_*ong 8

在views/edit.ctp中

<script type="text/javascript">
$(document).ready(function (){
 $('#country').change(function() {
   $('#state').load('/controller/getStates/'+$(this).val());
 });
});
</script>
<select id="country" name="country">
<option value="1">Greece</option>
</select>

<span id="state">
<select name="state">
<option value=""></option>
</select>
</span>
Run Code Online (Sandbox Code Playgroud)

并在controller.php中

function getStates(int countryID){
  $this->set('selectbox',
    $this->State->find('list',array('conditions'=>'State.Country_id='.$countryID,
      'fields;=>array('description')));
}
Run Code Online (Sandbox Code Playgroud)

和views/getStates.ctp

<select name="state">
<option value=""></option>

<?php 
foreach($selectbox as $option) 
  echo '<option value="'.$option['id'].'">'.$option['description'].'</option>'."\n";
?>
</select>
Run Code Online (Sandbox Code Playgroud)

我希望我不要忘记一些事情