我有一个用于文件上传的JSP代码。我已经在form的action属性中给出了servlet路径。
<html>
<head>
<style>
body {
background-color: #CCCCFF;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Upload Page</title>
</head>
<body>
<center>
<h1 align="center" >Status Of Metadata Components<br><br></h1>
<P> Upload the Package.xml File</P>
<form method="post" action="Testservlet"
enctype="multipart/form-data">
Select file to upload: <input type="file" name="file" size="60" /><br />
<br /> <input type="submit" value="Upload" />
</form>
</center>
</body>
</html>
现在我想检查上传的文件是否为'.xml'类型,然后重定向到'testservlet',如果不是我想留在同一页面上。我该怎么办?
答案 0 :(得分:1)
借助简单的js方法,您可以检查文件的扩展名。
在表格提交上调用js方法&amp;然后使用split获取扩展名,如果扩展名为!=&#34; xml&#34;返回false,不允许控制转到你的servlet。
检查代码
<html>
<head>
<script>
function checkFile()
{
var name = document.getElementById("file").value;
var extension = name.split(".");
if(extension[1]!="xml")
{
alert("Incorrect file");
return false;
}
else
{
alert("Correct file");
return true;
}
}
</script>
</head>
<body>
<form action="TestServlet" method="post" onsubmit="return checkFile()">
Select file to upload: <input type="file" name="file" id="file" size="60" />
<br/><input type="submit" id="btnSubmit" value="Upload">
</form>
</body>
</html>