Php javascript document.submit不适用于所有浏览器
我的代码有问题,当用户在第一个选择菜单中选择“事件”时,它会用数据库中的选项更新第二个菜单。第二个菜单在某些浏览器(如IE和Chrome)中没有更新,但在其他浏览器(如firefox)中效果良好 我不太清楚是什么问题,如果有任何帮助,我们将不胜感激。 谢谢 我目前拥有的代码如下-Php javascript document.submit不适用于所有浏览器,php,javascript,browser,Php,Javascript,Browser,我的代码有问题,当用户在第一个选择菜单中选择“事件”时,它会用数据库中的选项更新第二个菜单。第二个菜单在某些浏览器(如IE和Chrome)中没有更新,但在其他浏览器(如firefox)中效果良好 我不太清楚是什么问题,如果有任何帮助,我们将不胜感激。 谢谢 我目前拥有的代码如下- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <script type="text/javascri
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function events()
{
document.eventform.submit();
}
</script>
<?
require_once('dbconnect.php');
$sql="SELECT id, event FROM events ORDER BY id DESC";
$result=mysql_query($sql);
$options1="";
while ($row=mysql_fetch_array($result)) {
$id=$row["id"];
$event=$row["event"];
$options1.="<OPTION VALUE=\"$event\">".$event;'</OPTION>';
}
$eventis = $_GET['event'];
$sql = "SELECT * FROM events WHERE event='$_GET[event]' ORDER BY id DESC";
$result=mysql_query($sql);
$options2="";
while ($row=mysql_fetch_array($result)) {
$id=$row["id"];
$location1=$row["location1"];
$location2=$row["location2"];
$location3=$row["location3"];
$location4=$row["location4"];
$options2.="<OPTION VALUE=\"$location1\">".$location1;'</OPTION>';
$options2.="<OPTION VALUE=\"$location2\">".$location2;'</OPTION>';
$options2.="<OPTION VALUE=\"$location3\">".$location3;'</OPTION>';
$options2.="<OPTION VALUE=\"$location4\">".$location4;'</OPTION>';
}
?>
</head>
<body>
<form action="" name="eventform" class="style1" id="eventform" onchange="events()">
<p align="center">
Step 1:
<select name="event" id="event">
<OPTION VALUE=0>Select Event:
<?=$options1?>
</select>
</label>
<?php echo $eventis ?></p>
<div align="center"></div>
<div align="center"></div>
</form>
<form action='sale.php' name= 'locationform' method='get'>
<div id="eventname"></div>
<p align="center">Step 2: Select the location:
<select name="location" id="location">
<OPTION VALUE=0>Select Location:
<?=$options2?>
</select>
</p>
<p align="center">
<input name="event" type="hidden" id="event" value="<?php echo $eventis ?>">
<input name="operator" type="hidden" id="operator" value="<?php echo $operator ?>">
<input type="submit" value="Submit" />
</form>
</p>
</body>
</html>
函数事件()
{
document.eventform.submit();
}
步骤1:
选择事件:
步骤2:选择位置:
选择位置:
首先,你没有选择你的形式
document.eventform.submit()代码>
如果未选择表单,则需要使用
document.forms[“eventform”].submit()
或者使用getElementById
选择表单
第二,你的html有点糟糕:)但我不认为这是问题所在。我想我会让你知道的。在这两种情况下都添加结束标记
选择事件:
选择位置:
它是有效的HTML吗?如果没有,那么您就不能期望它工作(尽管无效的HTML是被高度容忍的)。此外,您可能还需要研究SQL注入。onchange不应该在select而不是表单上吗。。但理想情况下,您不会在更改select值的情况下提交表单,而只是将选项更改为第二个select(无论是通过ajax还是为第二个select使用几个预加载的选项集之一)。感谢ghbarratt,这正是问题所在!另外,将value属性用引号括起来是一种很好的做法;)