我必须制作一个带有多个互相修改的下拉菜单的表单。菜单/数据库表是:
类别,样式,类型和机制
我尝试使用有限的Ajax知识来执行此操作,但是似乎只能访问一次MySQL(在初始页上)以填充Categories表,而后无法通过查询下一组结果来更新Styles表。我收到一个错误,声称数据库为空。
我还尝试通过选项组填充下拉列表,以使用循环查询来处理“类别”和“样式”,但是仅显示“类别”标题,而所有“样式”子值显示为空白。我的代码如下:
$query1="SELECT categories.category_id, categories.Category_Name ";
$query1.="FROM categories ";
$query1.="ORDER BY categories.Category_Name ASC";
$category_result=mysql_query($query1, $connection);
if(!$category_result){
die("Database query failed: " . mysql_error());
}
$options="";
$con=0;
while ($category_row=mysql_fetch_array($category_result)) {
$category_name=$category_row["Category_Name"];
$CategoryID=$category_row["category_id"];
$options.="<OPTGROUP LABEL=\"$category_name\"> <br />";
$query2="SELECT categories.category_id, categories.Category_Name, ";
$query2.="styles.style_id, styles.Style_Name ";
$query2.="FROM categories, styles ";
$query2.="WHERE styles.Category_ID = $CategoryID ";
$style_result=mysql_query($query2, $connection);
if(!$style_result){
die("Database query failed: " . mysql_error());
}
while ($style_row=mysql_fetch_array($style_result)) {
$style_name=$row["Style_Name"];
$id=$row["style_id"];
$options.="<OPTION VALUE=\"$id\" <a href=\"#\" onClick=\"javascript:swapContent('$style_name');\" >".$style_name.'</OPTION>';
}
$options.='</OPTGROUP> <br />';
}
?>
<SELECT NAME="category_id">
<OPTION VALUE=0></OPTION>
<?php echo $options ?>choose
</SELECT>
任何对我做错事的见解将不胜感激!
最后,我只能自己解决问题,但是感谢那些尝试提供帮助的人。
我将从我的Class / Category / Style / Type级联表中发布中间表。首先执行如下功能:
<?php //Category Selection
function Category_Selection($link) {
global $connection;
$options="";
if(isset($_GET["class_id"])) {
$query="SELECT categories.category_id, categories.Category_Name ";
$query.="FROM categories ";
$query.="ORDER BY categories.Category_Name ASC";
$result=mysql_query($query, $connection);
$class_id=$_GET['class_id'];
if(!$result){
die("Database query failed: " . mysql_error());
}
while ($row=mysql_fetch_array($result)) {
$name=$row["Category_Name"];
$id=$row["category_id"];
$link2=$link."&category_id={$id}";
$options.="<OPTION VALUE=\"$link2\" ";
if(isset($_GET["category_id"])) {
$category_id = $_GET['category_id'];
if($id==$category_id) {
$options.=" selected=\"selected\" ";
}
}
$options.=" >".$name.'</OPTION>';
}
} else {
$options.="<OPTION selected=\"selected\" VALUE=0>First Select Class</OPTION>";
}
return($options);
}
?>
然后放在您的主页上:
<?php session_start() ?>
//Category
if(isset($_GET['category_id'])) {
$category_id=$_GET['category_id'];
setcookie('category_id',$category_id);
$link.="&category_id={$category_id}";
}elseif(isset($_COOKIE['category_id'])) {
$_GET['category_id']=$_COOKIE['category_id'];
$category_id=$_COOKIE['category_id'];
$link.="&category_id={$category_id}";
}
现在,使您的选择下拉列表:
<?php //Category Selection
$options=Category_Selection($link);
?>
<center>
<SELECT NAME="category_id" ONCHANGE="location = this.options[this.selectedIndex].value;">
<OPTION VALUE=0></OPTION>
<?php echo $options ?>
</SELECT>
</center>
对每个所需的下拉菜单重复以上操作。
祝您好运…而且,当然要使用MYSQLi保护您的网站,而不是上面显示的MYSQL …
问题内容: 我的数据库包含国家和城市。 第一种情况-成功完成: 国家列表在页面加载的下拉框中填充 城市列表将在页面加载的下拉框中填充-填充的城市列表基于默认国家/地区。 第二种情况-无法成功: 用户更改国家 城市列表将根据所选国家/地区更改 我知道我必须使用jQuery / Ajax。我尝试过,但是由于缺乏编程经验,我无法解决问题。我的列表是从数据库而不是XML获取的。我只需要一个快速的解决方案,
问题内容: 我有以下问题: 我开始用HTML和JS创建表单,并且有两个下拉菜单(国家和城市)。现在,我想使用JQuery使这两个动态,以便仅显示所选国家/地区的城市。 我从一些基本的JS入手,但效果不错,但在IE中却有些麻烦。现在,我正在尝试将JS转换为JQuery,以获得更好的兼容性。 我原来的JS看起来像这样: 我知道这很简单,但是我看不到树木的木头。 问题答案: 它应该像
问题内容: 我有以下代码以生成级联下拉列表,但是由于某种原因,ajax发布无法正常工作。我可以获取它以填充状态列表,当我选择一个状态时,我会向我显示正确的值,但是当需要发布到fetch_state.php时,它似乎发布了null。有人可以帮我解释为什么这样做吗? 这是下面的代码 fetch_state.php 我不断收到错误 问题答案: 首先,将您更改为 然后用引号引起来 同时,把块出来的,只是有
我有一个KendoUI下拉列表,它从网络服务中获取数据,这取决于所选的项目,第二个下拉列表被填充。我使用MVVM绑定。 我的代码如下所示: 两个列表的数据最初都已正确填充,并且已正确绑定到模型。但是,更改第一个下拉列表的值不会导致第二个下拉列表刷新其数据。从未触发对web服务的调用。 我在这里看到过使用本地数据的类似情况: 用于级联DropDownList的MVVM绑定
问题内容: 我正在尝试使用jQuery / AJAX和PHP / MySQL创建一组动态的下拉框。当页面根据数据库中的值加载时,将填充第一个下拉框。第二个下拉框应根据第一个下拉框的选择显示一组值。我知道以前也有类似的问题问过,但是我没有找到适合我的情况的解决方案。 我的查询为第二个下拉列表生成了一个JSON编码的值列表,但该查询正在运行,但是在将其填充到实际的下拉表单元素时遇到了问题。关于我要去哪
本文向大家介绍jQuery+PHP+MySQL二级联动下拉菜单实例讲解,包括了jQuery+PHP+MySQL二级联动下拉菜单实例讲解的使用技巧和注意事项,需要的朋友参考一下 二级联动下拉菜单选择应用在在很多地方,比如说省市下拉联动,商品大小类下拉选择联动。本文将通过实例讲解使用jQuery+PHP+MySQL来实现大小分类二级下拉联动效果。 实现效果:当选择大类时,小类下拉框里的选项内容也随着改