Javascript 多个下拉列表在HTML中不起作用
嗨,朋友们早上好Javascript 多个下拉列表在HTML中不起作用,javascript,php,html,Javascript,Php,Html,嗨,朋友们早上好 我创建了一个类似购物车的页面,因为我使用了多个下拉字段[示例8单个页面中的下拉列表]。使用下拉列表,我可以添加所需的数量,并且数量应该根据使用PHP的数量变化而增加我在运行它时遇到以下问题。 1.当我单击一个下拉列表时,该值将自动更改为0。 第二个问题已解决 2.已解决 2.单击第二个下拉框时,页面将刷新,第一个值已清除 这是代码 <form action="" method="get" name="months"> <select id="selectId"
我创建了一个类似购物车的页面,因为我使用了多个下拉字段[示例8单个页面中的下拉列表]。使用下拉列表,我可以添加所需的数量,并且数量应该根据使用PHP的数量变化而增加
我在运行它时遇到以下问题。
1.当我单击一个下拉列表时,该值将自动更改为0。
第二个问题已解决
2.已解决
2.单击第二个下拉框时,页面将刷新,第一个值已清除 这是代码
<form action="" method="get" name="months">
<select id="selectId" onchange="this.form.submit()" name="month" >
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select><br><br></form>
<?php
$rs='5000';
$mul=$_REQUEST['month'];
$multiply= $rs*$mul;
?></td><td><?php echo "Rs.$multiply"; ?></td></tr>
<form action="" method="get" name="months">
<select id="selectId" onchange="this.form.submit()" name="month1" >
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select><br><br></form>
<?php
$rs='1000';
$mul=$_REQUEST['month1'];
$multiply= $rs*$mul;
?></td><td><?php echo "Rs.$multiply"; ?></td></tr>
0
1.
2.
3.
4.
5.
6.
7.
8.
9
10
11
12
0
1.
2.
3.
4.
5.
6.
7.
8.
9
10
11
12
有关更多信息,请参见屏幕截图-->onchange=“this.form.submit()”每次更改所选项目时都会导致页面提交和刷新
这意味着您可以使用会话来记住这些值,也可以删除“onchange=”This.form.submit()”并在表单中放置一个提交按钮:
<input type="submit" value="Submit">
如果您试图不刷新页面,则需要使用ajax调用将返回JSON的web服务。1)您的
中缺少If语句,要为每一行设置selected=“selected”
,请执行以下操作:
<option value="1" <?php if($_REQUEST['month'] == 1){echo 'selected="selected"';}?>>1</option>
除了选择使用php代码创建选项之外,它还将减少页面中的代码
<?php
for($i=0;$i<=12;$i++){
if($i==$_REQUEST['month']) {
echo '<option selected="selected" value="'.$i.'">"'.$i.'"</option>';
}
else{
echo '<option value="'.$i.'">"'.$i.'"</option>';
}
}
?>
对于每个选择框,用户可以使用上述代码。但需要在条件下更新请求参数$\u request['month']
。尝试此选项:
<html>
<head>
<title>SO - Cart</title>
</head>
<body>
<form action="" method="get" name="months">
<select id="selectId" onchange="this.form.submit()" name="month" >
<?php
for($i=0;$i<=12;$i++){
if($i==$_REQUEST['month']) {
echo '<option selected="selected" value='.$i.'>'.$i.'</option>';
}
else{
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select><br><br>
</form>
<?php
$mul = 0;
$rs='5000';
$mul=$_GET['month'];
$multiply= $rs*$mul;
?>
<?php echo "Rs ".$multiply; ?>
</body>
</html>
购物车
从上面修改的工作代码Duikboot的代码
只是在表单上方插入了我的PHP代码。它可以很好地使用它
<html>
<head>
<title>SO - Cart</title>
</head>
<body><?php
$mul = 0;
$rs='5000';
$mul=$_GET['month'];
$multiply1= $rs*$mul;
?>
<?php
$mul = 0;
$rs='2000';
$mul=$_GET['months'];
$multiply= $rs*$mul;
?>
<form action="" method="get" name="months">
<select id="selectId" onchange="this.form.submit()" name="month" >
<?php
for($i=0;$i<=12;$i++){
if($i==$_REQUEST['month']) {
echo '<option selected="selected" value='.$i.'>'.$i.'</option>';
}
else{
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select>
<?php echo "Rs ".$multiply1; ?><br><br>
<select id="selectId" onchange="this.form.submit()" name="months" >
<?php
for($i=0;$i<=12;$i++){
if($i==$_REQUEST['months']) {
echo '<option selected="selected" value='.$i.'>'.$i.'</option>';
}
else{
echo '<option value="'.$i.'">'.$i.'</option>';
}
}
?>
</select>
<?php echo "Rs ".$multiply; ?>
<input type="submit" />
</form><br><br>
</body>
</html>
购物车
您的代码解决了第二个问题,但第一个下拉框的值会自动更改为0。@Markonly下拉框工作,而我使用php代码运行它时,它不工作。@Markonly“$i”显示为输出。。值不显示。@duikbootOh,我可能在“引号”上犯了一个错误。您现在可以再次测试吗?谢谢!(它在这里工作).No No再次显示只有下拉框出现,“$i”
value@duikboot请将您的页面另存为dropdown.php.Oops只是犯了一个错误我尝试了这个。使用一个下拉框很好。但是当我放置2-3个下拉框时,它不起作用,只有一个值起作用,另一个值得到刷新。@duikboot例如,我刚刚发布了第一个下拉框d但你可以在图片中看到真实的场景@Zack@coolprarun,刚刚更新了我的答案,您使用的是$\u GET而不是$\u POST,但是我使用了$\u REQUEST来匹配您的代码。如果您在循环中使用上述代码,它将检查每个“月”选项是否为选中的,如果为选中的,则将其标记为选中的