本帖最后由 严明 于 2012-6-22 07:05 编辑
用MyEcilpse新建一个JSP网页中: 默认会生成如下代码
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
</head>
然后我在<head>中编写一段JavaScript代码验证表单,如下:
<head>
<base href="<%=basePath%>">
<script language="javascript">
function validate() {
var name=document.getElementByName("username").value;
</script>
</head>
问题是: var name=document.getElementById("user").value; 这段代码是不能获取到JSP中表单中的值,当删除<base href="<%=basePath%>"> 后,
才能获得表单中的值.
如果不删除 <base href="<%=basePath%>"> ,必须用var user=$("username").value; 替换 var name=document.getElementById("user").value; 才能获得表单上的值,
也就是说用var user=$("username").value; 时必须有<base href="<%=basePath%>"> ,为什么?谁能帮忙解释一下<base href="<%=basePath%>"> 这句代码的作用?
|
|