【发布时间】:2012-10-04 08:37:58
【问题描述】:
我制作了 2 个从我的数据库中填充的下拉列表。第一个下降是国家,第二个是城市。当用户在第二个下拉列表中自动选择一个国家时,该国家的所有城市都会出现。问题是,当我选择另一个国家/地区时,所有页面都在刷新,而我只想要 2 个下拉列表来进行刷新。我正在使用 Javascript 和 PHP。以下是代码:
@$cat=$_GET['cat'];
$quer2=mysql_query("SELECT DISTINCT category,cat_id FROM category order by category");
if(isset($cat) and strlen($cat) > 0){
$quer=mysql_query("SELECT DISTINCT subcategory FROM subcategory where cat_id=$cat order by subcategory");
}else{$quer=mysql_query("SELECT DISTINCT subcategory FROM subcategory order by subcategory"); }
echo "<select name='cat' onchange=\"reload(this.form)\"><option value=''>Select one</option>";
while($noticia2 = mysql_fetch_array($quer2)) {
if($noticia2['cat_id']==@$cat){echo "<option selected value='$noticia2[category]'>$noticia2[category]</option>"."<BR>";}
else{echo "<option value='$noticia2[cat_id]'>$noticia2[category]</option>";}
}
echo "</select>";
echo "  ";
echo "<select name='subcat'><option value=''></option>";
while($noticia = mysql_fetch_array($quer)) {
echo "<option value='$noticia[subcategory]'>$noticia[subcategory]</option>";
}
echo "</select>";
这是 Javascript 代码:
function reload(form)
{
var val=form.cat.options[form.cat.options.selectedIndex].value;
self.location='index.php?cat=' + val ;
}
我希望当我更改国家/地区时,所有页面不会仅刷新这 2 个下拉列表。任何帮助都感激不尽。
【问题讨论】:
-
使用 jQuery + Ajax 代替 PHP,以满足您的要求。
-
您好。我想你今天问了两个关于使用谷歌 API 来确定两点之间距离的问题,但是你删除了它们。请注意,如果您经常这样做,您的帐户可能会在短时间内被锁定,无法提出新问题。
标签: php javascript