图片上传预览 后台获取数据为空

街道向晚 2013-12-19 11:57:35
我想实现图片上传前预览,可是后台获去前台表单的数据时为空,现在定位到问题出现在预览的JS里面,求问大神什么原因呢?
预览JS代码:
function setImagePreview(file) {
//var docObj=document.getElementById("bussinessLisenceString");
$("tr input").attr("name","");
$("tr input").attr("id","");
$(file).attr("name","bussinessLisenceString");
$(file).attr("id","bussinessLisenceString");
var imgObjPreview=document.getElementById("preview");
alert($(file).val());
//file.attr("id","bussinessLisenceString");
if(file.files && file.files[0]){
//火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
imgObjPreview.src = window.URL.createObjectURL(file.files[0]);
}else{
//IE下,使用滤镜
file.select();
var imgSrc = document.selection.createRange().text;
var localImagId = document.getElementById("localImag");

//图片异常的捕捉,防止用户修改后缀来伪造图片
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
}catch(e){
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
imgObjPreview.style.display = 'none';
document.selection.empty();
}
$("#upImage").css("display","none");
$("#preImage").css("display","table-row");

}
ftl表单格式是enctype="multipart/form-data",后台获取数据都是null,不是request的问题,请问上面的预览哪里出问题导致了不能在后台获得表单的text数据呢?
...全文
258 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
街道向晚 2013-12-20
  • 打赏
  • 举报
回复
引用 2 楼 showbo 的回复:
IE8-是不能修改已经添加到dom中input元素的name值的,自己固定好input元素的name值来,不要动态赋值
擦 真的是这个原因,纠结了好久,多谢!
Go 旅城通票 2013-12-19
  • 打赏
  • 举报
回复
IE8-是不能修改已经添加到dom中input元素的name值的,自己固定好input元素的name值来,不要动态赋值
KeepSayingNo 2013-12-19
  • 打赏
  • 举报
回复
可以在前端定义一个隐藏域的服务端控件,在前端把值写到隐藏域,在后台获取隐藏域的值

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧