一. 批量导入试题
假设现在我们需要的是点击下载模板按钮就可以请求我的电脑里的文件夹然后去选择试题模板。为它写一个点击事件的方法。
再上传前我们要限制上传试题的文件类型,onchange为事件属性,在元素值改变时触发。然而下载模板downloadTemplate方法里面window.open(“DownloadTemplate”)的在控制器里:先是获取模板路径,判断真的存在该路径便获取文件名返回文件,否则直接返回false;最后找到你要上传的模板点击上传即可。
public ActionResult DownloadTemplate()
{
//获取模板路径
string filePath =
Server.MapPath("/Document/Template/批量导入模板.docx");
if
(System.IO.File.Exists(filePath))
{
//获取文件名称
string fileName =
Path.GetFileName(filePath);
//返回文件
return File(new
FileStream(filePath,FileMode.Open), "application/octet-stream",
fileName);
}
else
{
return Content("模板文件不存在,请联系运维人员");
}
}
上传试题的方法,我用到了ajaxSubmit()提交表单:我们直接通过form提交的话,提交后当前页面跳转到form的action所指向的页面。然而,很多时候我们并不希望提交表单后页面跳转,那么,我们就可以使用ajaxSubmit(obj)来提交数据,ajaxSubmit(obj)方法是jQuery的一个插件jquery.form.js里面的方法,所以使用此方法需要先引入这个插件。它的方法路径是写在HTML里面,根据它的路径upLoadWord去控制器写保存试题的方法。1.判断导入的文件类型是否正确,再判断为true的情况下再判断路径是否存在,不存在就创建。2. 将word文档转化为html,保存到指定的文件夹读取文内容提取p标签的文字和内容并声明存放输出数据的变量