jsp页面的问题

我的页面每次访问的时候,为什么js中的function都自动运行啊?我也没点onclick按钮啊?

<%@ page language="java" import="java.util.*,model.*"
pageEncoding="gb2312"%>
<script type="text/javascript">
function substart(){
var b='<%WorkModel.getInstance().addstart(1)%>';
if(b='true'){
window.location.href("MyJsp.jsp");
}else{
window.status="your have clicked a button!"
}
//window.location.href("MyJsp.jsp");

}
function subend(){
var b1='<%WorkModel.getInstance().addend(1)%>';
if(b1='true'){
window.location.href("MyJsp.jsp");
}else{
window.status="your have clicked a button!"
}

}
<%String starttime = TimeModel.getInstance().selstart();
String endtime = TimeModel.getInstance().selend();
String start = TimeModel.getInstance().starttime("1");
String end = TimeModel.getInstance().endtime("1");
String id = request.getParameter("name");
session.setAttribute("id", id);
%>
</script>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<link href="tab.css" type="text/css" rel="stylesheet">

<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body id="design">

<form action="Work.do" name="WorkFrom">
<ul id="tabnav">
<li class="上下班登记">
<a href="MyJsp.jsp">上下班登记</a>
</li>
<li class="外出登记">
<a href="go.jsp">外出登记</a>
</li>
<li class="请假登记">
<a href="holiday.jsp">请假登记</a>
</li>
<li class="出差登记">
<a href="travel.jsp">出差登记</a>
</li>
<li class="考勤查看">
<a href="Attendance.jsp">考勤查看</a>
</li>
</ul>
<div id="content">
<table border="2" cellpadding="2" cellspacing="2" bgcolor="#eeeeee">
<tr>
<th>
登记次数
</th>
<th>
登记类型
</th>
<th>
规定时间
</th>
<th>
登记时间
</th>
<th>
登记
</th>
</tr>
<tr>
<th>
1
</th>
<td>
上班
</td>
<td>
<%=starttime%>
</td>
<td>
<%=start%>
</td>
<td>
<input type=button value="登记" onclick="substart()">

</td>
</tr>
<tr>
<th>
2
</th>
<td>
下班
</td>
<td>
<%=endtime%>
</td>
<td>
<%=end%>
</td>
<td>
<input type=button value="登记" onclick="subend();">
</td>
</tr>
</table>
</div>
</form>
</body>
</html>

有可能的情况是浏览器的问题,也有可能是你后台代码的逻辑问题。
我讲你的代码还原成纯HTML如下,你看看。
<script type="text/javascript">
function substart(){
var b='true';
if(b='true'){
window.location.href("http://www.sina.com.cn");
}else{
window.status="your have clicked a button!"
}
//window.location.href("MyJsp.jsp");

}
function subend(){
var b1='false';
if(b1='true'){
window.location.href("http://www.yahoo.com");
}else{
window.status="your have clicked a button!"
}

}
</script>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<link href="tab.css" type="text/css" rel="stylesheet">

<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

</head>

<body id="design">

<form action="Work.do" name="WorkFrom">
<ul id="tabnav">
<li class="上下班登记">
<a href="MyJsp.jsp">上下班登记</a>
</li>
<li class="外出登记">
<a href="go.jsp">外出登记</a>
</li>
<li class="请假登记">
<a href="holiday.jsp">请假登记</a>
</li>
<li class="出差登记">
<a href="travel.jsp">出差登记</a>
</li>
<li class="考勤查看">
<a href="Attendance.jsp">考勤查看</a>
</li>
</ul>
<div id="content">
<table border="2" cellpadding="2" cellspacing="2" bgcolor="#eeeeee">
<tr>
<th>
登记次数
</th>
<th>
登记类型
</th>
<th>
规定时间
</th>
<th>
登记时间
</th>
<th>
登记
</th>
</tr>
<tr>
<th>
1
</th>
<td>
上班
</td>
<td>
aaaa
</td>
<td>bbbbbbbb
</td>
<td>
<input type=button value="登记" onclick="substart()">

</td>
</tr>
<tr>
<th>
2
</th>
<td>
下班
</td>
<td>cccccccc
</td>
<td>sssssssssss
</td>
<td>
<input type=button value="登记" onclick="subend();">
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
并没有出现你说的那个情况。它没有自动运行。
另外给你点儿小建议:javascript方法一般都放在<head></hread>之间,几乎没人放到页面最上面的。呵呵。要做一个专业的程序员。
希望我的回答对你有帮助。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-09-25
<script type="text/javascript">

<!--

function substart(){
var b='<%WorkModel.getInstance().addstart(1)%>';
if(b='true'){
window.location.href("MyJsp.jsp");
}else{
window.status="your have clicked a button!"
}
//window.location.href("MyJsp.jsp");

}
function subend(){
var b1='<%WorkModel.getInstance().addend(1)%>';
if(b1='true'){
window.location.href("MyJsp.jsp");
}else{
window.status="your have clicked a button!"
}

}
<%String starttime = TimeModel.getInstance().selstart();
String endtime = TimeModel.getInstance().selend();
String start = TimeModel.getInstance().starttime("1");
String end = TimeModel.getInstance().endtime("1");
String id = request.getParameter("name");
session.setAttribute("id", id);
%>

-->

</script>
第2个回答  2009-09-25
从你的代码来看是不可能的。如果你把function写到了<body >里那就会自动运行了 根本没有调用怎么会运行呢???
第3个回答  2009-09-25
你把function写到body的尾部试试。
第4个回答  2009-09-25
我的页面每次访问的时候,为什么js中的function都自动运行啊?我也没点onclick按钮啊?
相似回答