关于bootstrap fileupload.js上传插件的使用之一

bootstrap fileupload.js这个插件是在做一个上传excel文件后生成曲线图时用到的,在网上找了很长时间资料,一直拿到的返回值有问题。现在将整体方案分享下     //新手,

初始化:

    该插件必须在调用jquery后才引用bootstrap后才可引用。

一、引用代码


<link rel="stylesheet" type="text/css" href="dist/css/bootstrap.min.css"/>
<!--引用Jquery-->
<script src="js/jquery-3.1.0.min.js" type="text/javascript" charset="utf-8"></script>
<script src="dist/js/bootstrap.min.js" type="text/javascript" charset="utf-8"></script>

<!--引用自己的js-->
<script src="js/domeJS.js" type="text/javascript" charset="utf-8"></script>

<!--引入bootstrap.file-input插件的css和js文件-->
<link rel="stylesheet" type="text/css" href="fileInput/fileinput.min.css"/>
<script src="fileInput/fileinput.min.js" type="text/javascript" charset="utf-8"></script>

<!--支持中文化的需要引入的js文件-->
<script src="fileInput/zh.js" type="text/javascript" charset="utf-8"></script>

引入成功后,HTML的代码

<li class="upload_li">
	<label class="control_label">选择文件</label>							
	<input id="input_file" type="file" class="file" name="file_execl"/>
</li>



这个是引入后的界面;


二、下来是初始化控件,js文件中

function initFileInput(ctrlName,uploadUrl){
    var control = $('#' + ctrlName);
//我使用的功能比较少,这块可以根据下面的内容自己添加(复制别人的)
    control.fileinput({
    	language : 'zh',
        allowedFileExtensions : ['xlsx','xls'],//格式
        showCaption : true,//是否显示文件标题
        showPreview : false,//是否显示预览
        showUpload : true,//是否显示上传按钮
        uploadUrl : uploadUrl,
        dropZoneEnabled: false,
  <span style="font-family: Arial, Helvetica, sans-serif;">  });</span>
//异步上传返回结果处理
    control.on("fileuploaded", function (event, data, previewId, index) {
        alert((data.response).succ);
    });	
};
    我就是在这块的衣服上传返回结果的处理卡住了,因为不知道返回的json格式是啥,试了好几次。

三、json格式

{
    "form": {},
    "files": [
        {}
    ],
    "filenames": [
        "1 _ 副本 _5_.xlsx"
    ],
    "filescount": 1,
    "extra": {},
    "response": {
        "succ": "成功"
    },
    "reader": {},
    "jqXHR": {
        "readyState": 4,
        "responseText": "{\"succ\":\"\\u6210\\u529f\"}\t\r\n",
        "responseJSON": {
            "succ": "成功"
        },
        "status": 200,
        "statusText": "OK"
    }
}

这个就是json的返回格式,我们主要需要拿到的就是response;(data.response).succ就可以正常拿到值,其余想要获取的值类似。

四、PHP后台处理代码:

因为只是一个简单的dome没有做安全验证,文件保存在当前upload文件夹下,没有做文件夹是否存在判断,所以需要自己先创建好upload文件夹。

<?php
    if(!$_FILES["file_execl"]){
        echo('没有找到文件');
    }else{
//	echo "Upload: " . $_FILES["file_execl"]["name"] . "<br />";//上传文件名
//	echo "Type: " . $_FILES["file_execl"]["type"] . "<br />";//类型
//	echo "Size: " . ($_FILES["file_execl"]["size"] / 1024) . " Kb<br />";//大小
//	echo "Temp file: " . $_FILES["file_execl"]["tmp_name"] . "<br />";//;保存的临时文件名

	
	$uploaddir  =  'upload/' ;
	$uploadfile  =  $uploaddir  .  basename ( $_FILES [ 'file_execl' ][ 'name' ]);
	if(move_uploaded_file($_FILES["file_execl"]["tmp_name"] , $uploadfile )){
		$succ = array('succ' => '成功');
		echo json_encode($succ);
	}else{
		$newData = array('succ' => '失败');
		echo json_encode($newData);
	}
    }
?>

后附:

某位网友整理的初始化的参数:

• showCaption:是否显示文件的标题。默认值true。
• showPreview:是否显示文件的预览图。默认值true。
• showRemove:是否显示删除/清空按钮。默认值true。
• showUpload:是否显示文件上传按钮。默认是submit按钮,除非指定了uploadUrl属性。默认值true。
• showCancel:是否显示取消文件上传按钮。只有在AJAX上传线程中该属性才可见可用。默认值true。
• captionClass:在标题容器上额外的class。类型string。
• previewClass:在预览区域容器上的额外的class。类型string。
• mainClass:添加在文件上传主容器。类型string。
• initialDelimiter:在initialPreview属性中用于上传多个文件时的分隔符。默认值:'*$$*'。
• initialPreview:类型string或array。显示的初始化预览内容。你可以传入一个简单的HTML标签用于显示图片、文本或文件。如果设置一个字符串,会在初始化预览图中显示一个文件。你可以在initialDelimiter属性中设置分隔符用于显示多个预览图。如果设置为数组,初始化预览图中会显示数组中所有的文件。
allowedPreviewTypes : [ 'image' ],
allowedFileExtensions : [ 'jpg', 'png', 'gif' ],
maxFileSize : 2000,










  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值