有两个下拉菜单, A和B.
A中的值是: - 汽车,自行车,飞机 B中的值是(当选择汽车时): - 法拉利,梅赛德斯 当选择自行车时: - 杜卡迪,哈利 选择飞机时: - MIG,Concorde
同样在选择了Drop菜单中的Value后,将更新一个价格的文本框,我需要这是一个重复的过程。我该如何实现它?我是PHP的新手。
答案 0 :(得分:0)
首先,我要感谢jogesh_p的帮助。
我终于设法自动填充下拉菜单,并使第二个下拉菜单取决于第一个下拉菜单。
正如jogesh在Dynamic select box with php and jQuery
提到他的博客确实帮了很多忙。
但是,我将发布我使用的代码,因为论坛倾向于在Google中占据更高的结果,并且让它更容易找到像我这样的其他新的PHP程序员。
编码分两页完成:
attempt.php
(这是主页)level.php
(当第一个下拉菜单的值更改时调用此页面)已经使用了jQuery和PHP。
attempt.php
:
<?php
//connect to the database
$con = mysql_connect("localhost","root","12345") or die("error ".mysql_error());
//connect to the trav table
mysql_select_db("trav",$con) or die("error ".mysql_error());
?>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
$(function()
{
$(window).load(function()
{
$('#building').change(function()
{
var parentValue = $(this).val();
// Determine the selected Value
if( parentValue.length != "" )
{
$.ajax(
{
url: 'level.php',
data: {parent: parentValue},
success: function(data)
{
$('#level').html(data);
}
});
}
else
{
$('#level').html('<option value="">Please Select</option>');
}
});
});
});
</script>
</head>
<body>
<form method="post" action="<?php echo $PHP_SELF;?>">
<table cellpadding="6" cellspacing="1">
<tr>
<td>
<label>Select Building : </label>
</td>
<td>
<select id="building">
<option value="">Please Select</option>
<?php
$query = "select * from build_list";
$result = mysql_query($query) or die('Error'.mysql_error());
while( $row = mysql_fetch_assoc($result) )
{
echo '<option value="'. $row['building'] .'">' . ucwords($row['building']) . '</option>';
}
?>
</select>
</td>
<td>
<label>Select Level : </label>
</td>
<td>
<select id="level">
<option value="">Please Select</option>
</select>
</td>
</tr>
</table></center>
</form>
</body>
</html>
level.php
:
<?php
//connect to the database
$con = mysql_connect("localhost","root","12345") or die("error ".mysql_error());
//connect to the trav table
mysql_select_db("trav",$con) or die("error ".mysql_error());
$building = mysql_real_escape_string($_GET['parent']);
$query = "select * from ";
$query = $query . $building;
$query = $query . ";";
$result = mysql_query($query) or die('Error in Child Table!');
echo '<option value="">Please Select</option>';
while( $row = mysql_fetch_assoc($result) )
{
echo '<option value="'. $row['lvl'] .'">'.$row['lvl'].'</option>';
}
?>
请注意,以上代码已在jogesh的博客中使用。上面已经提到了这个链接。
希望它可以帮助像我这样的新手php的其他php程序员,但是喜欢尝试不同的东西。