上传文件组件ajaxFileUpload

3 篇文章 0 订阅

1.options参数说明:

1、url            上传处理程序地址。
2、fileElementId      需要上传的文件域的ID,即的ID。
3、secureuri        是否启用安全提交,默认为false。
4、dataType         服务器返回的数据类型。可以为xml,script,json,html。如果不填写,jQuery会自动判断。
5、success         提交成功后自动执行的处理函数,参数data就是服务器返回的数据。
6、error          提交失败自动执行的处理函数。
7、data            自定义参数。这个东西比较有用,当有数据是与上传的图片相关的时候,这个东西就要用到了。
8、type             当要提交自定义参数时,这个参数要设置成post

2.上传弹出框和上传摁扭

<div id="uploadAppendixPop" class="pop"  style="display:none;">
    <table class="tableInput" id="uploadAppendixModel">
        <tbody>
	        <tr>
	            <td class="bgtd">上传附件路径</td>
	            <td>
	                <input type="file" id="uploadAppendixFileRoad" name="uploadAppendixFileRoad" >
	            </td>
	        </tr>
        </tbody>
    </table>
</div>

<button class="btn" onclick="uploadAppendix('xxxx')">上传附件</button>

3.上传js(dataType通常设置为json,后端传上来时设置resp.setContentType("application/json; charset=UTF-8"),前端转为json:var data =  $.parseJSON(json);

function uploadAppendix(Id) {
	$('#uploadAppendixFileRoad').val('');
	fileIds = {};
	var index = layer.open({
		type: 1,
		title: '上传文件',
		skin: 'layui-layer-rim',
		area: ['520px', '180px'],
		content: $('#uploadAppendixPop'),
		btn: ['确定', '取消'],
		btnAlign: 'c',
		btn1: function () {
			submitAppendixForm( applyId, function(){
				layer.close(index);
			});
		},
		btn2: function () {

		}
	});
}
/**
 * 提交上传文件
 * @param entityId
 * @Param entityCode 
 */
function submitAppendixForm(Id, callback) {
	var file = $("#uploadAppendixFileRoad").val();
	var fileName = file.replace(/^.+?\\([^\\]+?)(\.[^\.\\]*?)?$/gi, "$1"); // 获取文件名,不带后缀
	if (fileName.length == 0) {
		layer.msg("附件文件名称不允许为空 !");
		return false;
	}
	if (filaNameSpecialCode(fileName)) {
		layer.msg("附件文件名称不能包含特殊字符!");
		return false;
	}
	if (fileName.length > 50) {
		layer.msg("附件文件名称长度不能超过50!");
		return false;
	}

	if (!isEmpty(fileName)) {
		$.ajaxFileUpload({
			url: "/Servlet?method=methodName&Id=" + Id,
			type: 'post',
			dataType : 'json',
			secureuri: false,
			fileElementId: 'uploadAppendixFileRoad',// file标签的id
			success: function (json) {
				var data =  $.parseJSON(json);
				if (data.result == "101") {
					layer.alert(data.message);
				} else {
					layer.alert("上传成功");
					setTimeout(function(){
						callback();
					},200);
				}
			},
			error: function () {
				layer.alert("上传附件失败");
			}
		});
	} else {
		layer.alert("上传文件不能为空");
		return;
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值