首先,我有两个通过id相关的动态组合框,我使用这个脚本填充我的comboxes。
<script type="text/javascript">
$(document).ready(function() {
$(".country").change(function() {
var id=$(this).val();
var dataString = 'id='+ id;
$.ajax
({
type: "POST",
url: "ajax_city.php",
data: dataString,
cache: false,
success: function(html)
{
$(".city").html(html);
}
});
});
});
</script>
这是我对于combobox1的php代码:所以当我从中选择项目时,combo2将只显示所选项目的所有内容。
<select name="municipality" class="country" style="width: 200px;">
<option selected="selected"></option>
<?php
//include('db.php');
$sql=mysql_query("select idmun,munname from municipality");
while($row=mysql_fetch_array($sql))
{
$id=$row['idmun'];
$data=$row['munname'];
echo '<option value="'.$id.'">'.$data.'</option>';
}
?>
</select>
这是针对组合框2:它只显示与组合选择项
相关的值<td>Barangay</td>
<td>
<select name="barangay" class="city" style="width: 200px;>
<option selected="selected"></option>
</select>
</td>
现在上面的代码工作,当我从combo1中选择项目时,combo2填充了与combo1相关的所有项目。 MY PROBLEM
现在是如何返回/设置/获取值。例如,我已将其保存到数据库中,并且我想编辑该记录,我需要display/set
相应于数据库的组合框项目。
我有这个解决方案beleow我已经成功地根据数据库设置了combo1的值但是它只是没有填充整个项目,只是填充数据库中的项目。此外,它似乎也没有填充我的combo2。
<select name="municipality" class="country" style="width: 200px;">
<option selected="selected"></option>
<?php
echo $munname;
$sql=mysql_query("select idmun,munname from municipality");
while($row=mysql_fetch_array($sql))
{
$id=$row['idmun'];
$data=$row['munname'];
if($id==$_GET['mun']){
echo "<option value='".$id."' selected = 'selected'>".$data."</option>";
}
else {
echo "<option value='".$id."'>".$data."</option>";
}
}
?>
</select>
我在这个论坛上搜索过类似的问题,但由于使用了不同的解决方案和代码行,我感到很困惑,而且我根本不是那么专家。所以任何好的/简单的例子或解决方案都值得赞赏。