首页 >> 大全

layui原生框架下,展示、替换图片(修改页面)

2023-12-22 大全 56 作者:考证青年

最终页面效果如下

(由于图片没有资源路径,所以没有展示出来。图片展示可以忽略)

代码如下

        

图片尺寸:300px*300px,图片大小不超过500KB,格式:jpg、png

点击更改按钮,可以替换图片,效果如下(原理是将img标签隐藏,插入选择文件的input标签)

框架怎么替换so_修改框架源码_

更改按钮,取消按钮 代码如下

    window.changeImg = function (str){var input = "";$("#editForm_productImg" + "").attr("style", "display:none");$("#span" + str).append(input);$("#change" + str).text("");$("#cancel" + str).text("取消");if (str == "Front")changeFront = true;}window.changeCancel = function (str){$("#editForm_productImg" + str + "").removeAttr("style");$("#editForm_productImg" + str + "input").remove();$("#change" + str).text("更改");$("#cancel" + str).text("");$('#edit_suply' + str + '_msg').html('');if (str == "Front")changeFront = false;}

(此处特别注意,这里使用的是将id与name分别进行拼接的方法,所以在做修改页面的校验的时候,或者对修改页面进行其他的图片操作的时候,注意图片的id,name是否拼接。在层也要重新定义一个图片的属性名,用于修改图片的方法中,此处的属性名要和前端页面拼接好的name保持一致)

修改的弹出框 代码

    //打开修改的弹窗var Index;function updateNewGood(data) {$('input[type="file"][id^="editForm_productImg"]').remove();//清除选择文件的input标签$('img[id^="editForm_productImg"]').show();//展示图片标签Index = layer.open({type: 1,content: $("#updateDiv"),area: ['600px', '300px'],shade: 0.6,//遮罩层透明度 0-1 默认0.3shadeClose: true,//是否点击遮罩层关闭弹窗 默认falseresize: false,anim: 3,skin: 'layui-layer-molv',title: '编辑新机',success: function () {//装载新的数据$('#updateDataFrm')[0].reset();$("#editForm_productImg").attr("src",data.productImg);form.val("updateDataFrm", data);//装载新的数据type = "PUT";}});}

修改框架源码__框架怎么替换so

修改页面的监听提交

代码如下

    //监听提交form.on('submit(updateSubmit)', function (data) {let formData = new FormData(data.form);let myfile = $("#addForm_newGoodproductImg")[0].files[0];formData.append('newGoodproductImgFront',myfile);//增加样式$('.addS').addClass(DISABLED);$(".addS").attr("disabled", "disabled"); // 避免多次提交,提交置灰requestData('/goods/pcNewGood/newGoodEdit', 'post', formData, function (data) {if (data.code === 0) {tableIns.reload();layer.msg(data.msg, {icon: 1}) ;layer.close(Index);//关闭弹框} else {layer.msg(data.msg, {icon: 2}) ;}}, true, null, false);});

下面是修改页面的校验 (额外注意图片的id、name属性为是拼接后的值,前面有提到过)

       editCheck: function (value,item){var msg="";var attrName=$(item).attr('name');if(attrName=="actName"){if (value == "") {msg = "产品名称不能为空";}}if(attrName=="describe"){if (value == "") {msg = "一句话描述不能为空";}}if(attrName=="updateNewGoodproductImgFront"){if (value == "") {msg="请选择要上传的图片";} else if(!(value.endsWith(".jpg")) && ! (value.endsWith(".png")) &&!(value.endsWith(".JPG")) && ! (value.endsWith(".PNG"))  ){msg="请上传jpg、png格式的图片";}else if((document.getElementById("editForm_productImgFrontinput").files[0].size)/1024>=size){msg="请上传"+size+"KB以内的图片";}}return msg;}

层的代码用的是已经封装好的方法,就不展示了。

好了,希望对大家有帮助,来自小萌新的一篇投稿,不对的地方,多多指教

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了