重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
ajax的表单提交只能提交data数据到后台,没法实现file文件的上传还有展示进度功能,这里用到form.js的插件来实现,搭配css样式简单易上手,而且高大上,推荐使用。
创新互联于2013年开始,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站建设、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元洪湖做网站,已为上家服务,为洪湖各地企业和个人服务,联系电话:028-86922220
需要解释下我的结构, #upload-input-file 的input标签是真实的文件上传按钮,包裹form标签后可以实现上传功能, #upload-input-btn 的button标签是展示给用户的按钮,因为需要样式的美化。上传完成生成的文件名将会显示在 .upload-file-result 里面, .progress 是进度条的位置,先让他隐藏加上 hidden 的class, .progress-bar 是进度条的主体, .progress-bar-status 是进度条的文本提醒。
去掉hidden的class,看到的效果是这样的
[图片上传失败...(image-2c700a-1548557865446)]
将上传事件绑定在file的input里面,绑定方式就随意了。
var progress = $(".progress-bar"), status = $(".progress-bar-status"), percentVal = '0%'; //上传步骤 $("#myupload").ajaxSubmit({ url: uploadUrl, type: "POST", dataType: 'json', beforeSend: function () { $(".progress").removeClass("hidden"); progress.width(percentVal); status.html(percentVal); }, uploadProgress: function (event, position, total, percentComplete) { percentVal = percentComplete + '%'; progress.width(percentVal); status.html(percentVal); console.log(percentVal, position, total); }, success: function (result) { percentVal = '100%'; progress.width(percentVal); status.html(percentVal); //获取上传文件信息 uploadFileResult.push(result); // console.log(uploadFileResult); $(".upload-file-result").html(result.name); $("#upload-input-file").val(''); }, error: function (XMLHttpRequest, textStatus, errorThrown) { console.log(errorThrown); $(".upload-file-result").empty(); } });
[图片上传失败...(image-3d6ae0-1548557865446)]
[图片上传失败...(image-9f0adf-1548557865446)]
更多用法可以 参考官网
1、使用简单、扩展方便。
2、表格样式可自定义,只需修改相应的CSS样式即可。
3、支持行点击事件自定义。
4、支持复选框选择行。
5、执行列排序(支持数字、日期时间、英文、汉字等)。
6、支持自定义行按钮及按钮事件(如编辑、删除按钮等)
7、支持自定义数据的显示样式(根据当前数据或当前行数据)
8、支持分页显示数据,且在插件内部实现分页处理。
二、使用说明
该插件的使用,基本只需两个步骤即可,一个是表格的声明(创建),然后就是数据的加载。
1、表格的声明(创建)
var objTable = new HyTable({
columns: [
{name: '姓名', mapping: 'username', type: 'string', width: '100', allowSort: true, renderer: function(val){return val;}}
], //(array)列信息
emptyMsg: "暂无数据", //(string)无数据时的提示信息
renderTo: "", //(string)表格容器,必须是HTML元素的ID属性值
model: 'remote', //(string)模式,远程(remote)or本地(local)
url: '', //(string)远程模式的获取数据的url地址
allowPaging: true, (bool)//是否分页
pageSize: 20, //(int)每页显示的行数
checkSelected: false, //(bool)复选框选择
selectedField: "", //(string)复选框选中字段
stripeRows: false, //(bool)是否启用隔行变色 默认不启用
onRowClick: null //(function)行点击事件
});
2、表格数据的加载
objTable.loadData(1,data);//第一个参数为加载页的页索引,第二个参数有两种情况,1:如果参数内容是JSON对象,则表示是查询的查询条件,如果是数据,则表示直接加载本地数据到表格中。
可以的,步骤如下:
1、得到网页滚动条滚动高度和滚动宽度:$(window).scrollTop(), $(window).scrollLeft()
2、得到网页的宽高:$(window).width(),$(window).height()
3、计算当前网页显示区域的结算点:网页宽高分别加上滚动条滚动的宽高得到结束点
4、计算当前网页显示区域的起始点:就是网页滚动条的滚动值
5、得到指定dom的位置:$("#div").offset()得到dom的位置起始点
6、得到指定dom的宽高:$("#div").width(),$("#div").height()
7、然后判断指定dom的位置是否在网页的显示区域内
步骤是这样的,代码就不写了。。。
jquery获取当前节点的前一个节点步骤如下:
1、打开html开发工具,新建一个html代码页面。
2、在html页面创建三个p标签,然后给这三个p标签设置不同的内容。
3、引入jquery库。在title标签后面引用下载好的jquery.js文件。
4、 在jquery引用库标签后面新建一个script标签,然后在这个标签里面添加一个DOM加载完成后执行函数。
5、在DOM加载完成后执行函数里面添加点击p标签时获取当前元素的上一个元素对象。
6、保存html代码后使用浏览器打开,然后点击p标签弹出框就会显示当前点击标签的上一个标签的内容。
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建html文件,例如:index.html,并引入jquery。
2、在index.html中的script标签,输入jquery代码:
$('input[type="checkbox"]').change(function () {
var a = '';
$('input[type="checkbox"]:checked').each(function () {
if (a !== '') {
a += ',';
}
a += $(this).val();
});
$('#a').val(a);
});
3、浏览器运行index.html页面,此时选择内容会自动追加到input输入框中,最多3个。