一种简单美观的java web文件上传页面设计思路

众所周知,前端上传文件,需要用form表单和input的type=‘file’,等等属性设置。
这导致了前端页面不美观,并且会随着浏览器的不同产生不同的效果。
本文假定读者已会web上传

针对以上描述问题,提出下面的解决方案:

效果图
css样式自行设置,不提供
思路如下:

  • 写一个普通的input元素和二个button元素(选择和导入)

  • 写一套form上传,设置为隐藏,并为input上传框设置id为file

  • 为input设置readonly属性(禁止用户输入内容),设置placeholder属性(input提示信息),设置onclick点击函数checkFile函数(自定义的)在函数中触发id为file 的窗选择文件$('#file').click();,同样为选择button设置该触发函数。

  • 为form中的input设置onchange事件,当选择了文件的时候会触发该函数,这里起名为getFileName(它的作用是回显,将form中input的内容显示到我们设置为显示的input的内容var name = $('#file').val(); $('#filename').val(name);

  • 为导入按钮设置一个点击事件subForm,在这个地方我们要做俩件事,一个是文件名的筛选,保证上传的文件类型,另一个就是触发上传功能,此处贴代码

	function subForm() {
		var filepath = document.getElementById("file").value;
		var re = /(\\+)/g;
		var filename = filepath.replace(re, "#");
		//对路径字符串进行剪切截取 
		var one = filename.split("#");
		//获取数组中最后一个,即文件名 
		var two = one[one.length - 1];
		//再对文件名进行截取,以取得后缀名 
		var three = two.split(".");
		//获取截取的最后一个字符串,即为后缀名 
		var last = three[three.length - 1];
		//添加需要判断的后缀名类型 
		var tp = "xls,xlsx";
		//返回符合条件的后缀名在字符串中的位置 
		var rs = tp.indexOf(last);
		if (rs != -1) {
		//文件上传函数----------------------------------
			toImport();
		} else {
			layer.alert("文件不是有效xls或者xlsx文件.请重新上传!", 0);
			document.getElementById("file").value = "";
			return false;
		}
	}
	function toImport() {
	//with的使用自行百度
		with (document.forms[0]) {
			var filepathStr = document.getElementById("file").value;
			if (filepathStr == "") {
				layer.alert("请选择要导入的Excel!",0);
			} else {
			//后台路径
				action = "batchInfoAction.do";
				submit();
				//设置等待弹窗防止重复提交
				layer.msg("批量导入需要较长时间,请耐心等待!",{icon:0,time:21600000,shade:[0.5,'#000',true]});
			}
		}
	}

总结

说白了就是把form隐藏掉,然后使用我们可控的input和按钮等组件来控制不可控的文件上传样式

### 回答1: 好的,我可以为您提供一套 Java 博客的思路。 1. 首先,需要确定博客的主题。是想分享技术经验,还是想展示自己的项目?明确了博客的主题之后,就可以开始准备内容了。 2. 准备内容时,需要注意以下几点: - 内容应该具有可读性。尽量使用简洁明了的语言,并使用图片、代码片段等工具来帮助读者理解。 - 内容应该有趣。如果博客的内容太乏味,很难吸引读者的眼球。 - 内容应该有价值。博客的内容应该能够帮助读者学习新知识,解决问题或者获得某些价值。 3. 在准备好内容之后,就可以开始搭建博客了。这里有几种选择: - 使用现成的博客系统,例如 WordPress、Jekyll 等。这种方式可以节省很多时间,但是需要注意的是,这些系统可能会有一些功能限制。 - 自己搭建博客系统。如果想要定制化更高,可以考虑自己开发博客系统。这种方式可能需要较长的时间,但是可以满足个性化的需求。 4. 最后,就是发布博 ### 回答2: 搭建一套Java博客系统可以分为以下几个步骤: 1. 确定需求和功能:首先需要明确博客系统的需求和功能,包括博客的基本展示功能、用户的注册登录功能、文章的发布、评论功能等。根据需求和功能确定项目的规模和复杂度。 2. 搭建开发环境:选择合适的Java开发工具和数据库,例如Eclipse或IntelliJ IDEA作为开发IDE,MySQL或Oracle作为数据库。搭建好开发环境。 3. 设计数据库结构:根据需求和功能,设计博客系统的数据库结构。包括用户表、文章表、评论表、分类表等。确定表的字段、数据类型和关联。 4. 创建项目:创建一个Java Web项目,用于开发和实现博客系统。选择合适的框架,例如Spring MVC或Spring Boot进行开发。创建项目的目录结构,引入相关依赖。 5. 设计和实现前端页面设计和实现博客系统的前端页面,包括首页展示、文章详情页、登录注册页等。使用HTML、CSS、JavaScript等技术进行前端开发,并与后端进行数据交互。 6. 实现后端逻辑:根据需求和功能,实现后端逻辑。包括用户的注册登录逻辑、文章的增删改查逻辑、评论的增删改查逻辑等。使用Java编程语言和相应的框架进行开发。 7. 数据库操作:在后端代码中实现数据库的增删改查操作,使用JDBC或ORM框架进行数据库操作。与数据库建立连接,执行SQL语句,操作数据库表中的数据。 8. 测试和调试:进行系统的测试和调试,确保系统的功能正常运行。对各个功能模块进行测试,修复bug和错误,保证系统的稳定性和可靠性。 9. 部署和发布:完成开发和测试后,将博客系统部署到服务器上。配置服务器环境,安装Java相关软件,上传代码和资源文件。通过域名或IP地址访问博客系统,发布正式版本。 10. 维护和优化:博客系统上线后,需要进行维护和优化。定期备份数据,定期关注服务器的性能和安全,处理用户的反馈和问题。根据用户的需求和反馈,进行系统的优化和升级。 以上是搭建一套Java博客系统的基本思路,根据具体的需求和技术栈的选择,可能会有所不同。同时,也可结合Java的开源框架和工具进行快速开发和实现部分功能。 ### 回答3: 搭建一套Java博客的思路如下: 1. 确定需求:首先明确博客的功能需求,如发布博文、查看博文、留言评论、用户登录等。 2. 选择技术栈:根据需求选择合适的技术栈,一般可以选择使用Java语言开发后端,并搭配Spring框架、Spring MVC或Spring Boot等。数据库可以选择使用MySQL、PostgreSQL等。 3. 构建数据库:设计并创建数据库,包括博文表、用户表、评论表等,根据需求创建对应的字段。 4. 搭建后端:使用Java开发后端,用于处理前端请求、实现业务逻辑。可以使用Spring框架进行依赖注入、控制反转等,使用Spring MVC或Spring Boot进行请求路由和响应处理。 5. 实现博文功能:根据需求,实现博文的发布、编辑、删除等功能。可以定义博文实体类,编写相关的Controller、Service和Dao层代码,实现对数据库的增删改查操作。 6. 实现用户功能:实现用户的注册、登录、注销等功能。可以使用Spring Security等安全框架进行用户认证和授权,确保用户信息的安全性。 7. 前端开发:使用HTML、CSS和JavaScript等前端技术实现用户界面。可以使用前端框架如Vue.js、React或Angular进行开发,实现页面的交互和样式的美化。 8. 实现评论功能:根据需求,实现评论功能,用户可以在博文下方添加评论并查看其他用户的评论。可以定义评论实体类,编写相关的Controller、Service和Dao层代码。 9. 部署上线:配置服务器环境,将数据库和后端代码部署到服务器上,并进行测试。可以选择使用Nginx进行反向代理、负载均衡等。 10. 迭代优化:根据用户反馈和需求的变化,不断优化博客系统,修复bug,并添加新的功能或模块。 以上就是搭建一套Java博客的基本思路,当然具体的实现细节还需要根据需求来定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值