JSP页面中写了个表单验证,为什么不起作用?
输入文件名,如果文件已经在tomcat的指定的目录里存在,则弹出一个“文件名已存在”的警告窗。现在不弹出警告窗,直接把表单提交到了6-45.jsp页面,是哪里的问题?新手...
输入文件名,如果文件已经在tomcat的指定的目录里存在,则弹出一个“文件名已存在”的警告窗。
现在不弹出警告窗,直接把表单提交到了6-45.jsp页面,是哪里的问题?新手菜鸟,代码不对的地方请勿见笑
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.io.*"%>
<html>
<body>
<form name="myform" action="6-45.jsp" method="post" onSubmit="return check()">
输入文件名称:<input type="text" name="filename"><br>
输入文件内容:<textarea name="filecontent" cols="30" rows="3"></textarea><br>
<input type="submit" value="保存">
<input type="reset" value="重置">
</form>
</body>
<head>
<script language="JavaScript">
function check(){
var fname=document.myform.filename.value;
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname;
File f=new File(fileName);
if(f.exists()){
alert("文件名已存在");
return false;
}
return true;
}
</script>
</head>
</html> 展开
现在不弹出警告窗,直接把表单提交到了6-45.jsp页面,是哪里的问题?新手菜鸟,代码不对的地方请勿见笑
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.io.*"%>
<html>
<body>
<form name="myform" action="6-45.jsp" method="post" onSubmit="return check()">
输入文件名称:<input type="text" name="filename"><br>
输入文件内容:<textarea name="filecontent" cols="30" rows="3"></textarea><br>
<input type="submit" value="保存">
<input type="reset" value="重置">
</form>
</body>
<head>
<script language="JavaScript">
function check(){
var fname=document.myform.filename.value;
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname;
File f=new File(fileName);
if(f.exists()){
alert("文件名已存在");
return false;
}
return true;
}
</script>
</head>
</html> 展开
3个回答
展开全部
你这个html代码中写这个东西:
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname
没有用处的,这是servlet代码<%%>起码要加上这个或者<%=%>
当然下面代码是一样的。
<script type="text/javascript">
var fileName = '<%=this.getClass().getResource("/").getPath()%>';
</script>
这样是能够获取到filename的。
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname
没有用处的,这是servlet代码<%%>起码要加上这个或者<%=%>
当然下面代码是一样的。
<script type="text/javascript">
var fileName = '<%=this.getClass().getResource("/").getPath()%>';
</script>
这样是能够获取到filename的。
展开全部
onSubmit 应该是 onsubmit
你的js脚本既然用java写
我想问一下,你到底学过jsp么?
追问
正在学,那请问,我验证部分该怎么写啊
追答
分清楚什么是jsp 什么是js ,jsp能做什么,js能做什么 把这两个搞清楚了你就不会问这个问题了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先:你在JS里面写这东西....你确定不是在逗我?
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname;
String fileName=this.getServletContext().getRealPath("/")+"note"+File.separator+fname;
追问
那请问,我验证部分该怎么写啊
追答
这个控件前台不太好控制,你可以在后台判断
fname传到后台,用ajax
......算了,你还是先好好学学JS和JSP再来研究这个问题吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询