你好,我是html的新手,我正在设计一个html测验。这是仅有2个问题的示例。当我单击提交按钮时,我想计算标记在警告框中显示,然后转到result.htm页面。但是当我单击提交警告框显示答案但页面未被重定向到result.htm。
我的代码是:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
.d1
{
background-color:#FFFFCC;
}
#Submit1
{
width: 67px;
}
</style>
<script language="javascript" type="text/javascript">
function Submit1_onclick() {
var i = 0;
var a = document.getElementById("Radio1");
if (a.checked == true) {
i++;
}
var b = document.getElementById("Radio8");
if (b.checked == true) {
i++;
}
alert(i);
}
</script>
</head>
<body>
<p>
</p>
<form name="f1" method="post" action="d://result.htm">
<div class="d1">
Q1 What is your name ?
<br />
a <input id="Radio1" name="R1" type="radio" value="t" />
b <input id="Radio2" name="R1" type="radio" value="f" />
c <input id="Radio3" name="R1" type="radio" value="f" />
d <input id="Radio4" name="R1" type="radio" value="f" /></div>
<br /> <br /> <br />
<div class="d1">
Q1 What is your Id ?
<br />
1 <input id="Radio5" name="R11" type="radio" value="V1" />
2 <input id="Radio6" name="R11" type="radio" value="r1" />
3 <input id="Radio7" name="R11" type="radio" value="as1" />
4 <input id="Radio8" name="R11" type="radio" value="pop1" /></div>
<br /> <br /> <br />
<div class="d1">
<input id="Submit1" type="submit" value="submit" onClick="return(Submit1_onclick())"/><br />
<br /> <br />
</form>
</body>
</html>
答案 0 :(得分:0)
作为函数调用的最后一行
<script language="javascript" type="text/javascript">
function Submit1_onclick() {
var i = 0;
var a = document.getElementById("Radio1");
if (a.checked == true) {
i++;
}
var b = document.getElementById("Radio8");
if (b.checked == true) {
i++;
}
alert(i);
location.href="result.htm";
}
</script>
这将重定向页面
答案 1 :(得分:0)
将您的标记更改为:
<input id="Submit1" type="submit" value="submit" onclick="Submit1_onclick();"/>
并将其添加到您的javascript:
function Submit1_onclick() {
...
alert(i);
return true;
}
从事件处理程序返回true将告诉浏览器继续默认行为(在这种情况下,提交表单)。
答案 2 :(得分:0)
听起来您正试图在IIS服务器中的两个静态文件之间提交POST,这是您无法做到的。您可以将文件更改为.aspx
,它应该按预期工作。