关于JS判断上传图片长宽的问题 这个不兼容,IE6可以用这个方法,凡是IE7和其他浏览器就不行了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 form1.reset(); 和form1.submit(); 即可form1为表单的name 不好意思。我搞不清楚。你说的不兼容是哪个方法啊?Submit方法还是Image的Load方法啊? 请问楼上 表单 不可以getElementById(formName) 的吗? 是因为图片并没有读取到浏览器里,也就是说对于你临时读取的IMG对象,JS并不能对其进行更多的操作。width并不能得到实际的数值。你做一个时间循环,等一下,当把图片读取后,JS可以正确得到宽高时,再进行提交。 不要寫onload=。。function chargenHead(){ vv=document.getElementById("fileHead").value; var tempImg=new Image(); tempImg.src=vv; //****************得到图片宽度 ww=tempImg.width; //****************得到图片高度 hh=tempImg.height; if(ww>140 || hh>150){ alert("Picture size is too big. It should be 140(w)*150(h)."); document.getElementById("form1").reset(); return; } if(ww==0){ alert("Please try again.(Error)"); document.getElementById("form1").reset(); return; } document.getElementById("form1").submit(); }另外這種寫法擴展性不好,FF用不了 我一开始是不写onlaod的,那个时候老是报。长度宽度为0的错误,频率很高所以加了onload请问5楼的,时间循环是什么东东?可以说说嘛? 用onload应该是对的提交也没看出问题或者你试着给 form改个名字比如 <form name="myform"然后这样提交document.myform.submit()楼上时间循环的意思可能是加个 setTimeout什么的,但这样依据不足, 就是 onload更保险些 可以给你的 chargenHead 里加个 alert, 看在upload没反应的时候, 这个函数是不是执行了,执行到哪儿了? document.getElementById("form1").submit(); 改为Form1.submit()试试 要用一点技巧,服务器远程测试通过:<body> <input type="file" name="file" id="fileHead" /> <input name="Submit2" type="button" onclick="chargenHead()" value="Upload" /> <img src="" style="display:none" id="testimg" onload="getSize(this)" /> <script language="javascript" type="text/javascript"> function chargenHead() { var vv=document.getElementById("fileHead").value; var reg=new RegExp("\\\\","g"); vv=vv.replace(reg,"/"); vv="file:///"+vv; document.getElementById("testimg").src=vv; } function getSize(o) { o.style.display=""; //****************得到图片宽度 ww=o.width; //****************得到图片高度 hh=o.height; o.style.display="none"; window.status="width:"+ww+" height:"+hh; } </script> </body> javascript脚本判断上传图片的大小和格式2007-05-10 15:21<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Author" CONTENT="宝玉"> </HEAD> <script language="javascript"> <!-- //检查插入是否为图片 var img=null; function chkimg(inp) { if(img)img.removeNode(true); img=document.createElement("img"); img.attachEvent("onreadystatechange",isimg); img.attachEvent("onerror",notimg); img.src=inp; } function notimg() { alert("您插入的不是图片,请重新选择插入"); } function isimg() { show.insertAdjacentElement("BeforeEnd",img); show1.innerHTML = "图片大小" + img.fileSize/1024 +"K<br />图片宽度"+ img.offsetWidth +"<br />图片高度"+ img.offsetHeight; } // --> </script> <BODY> <div id="show"></div> <div id="show1"></div> <input type="file" name="" onpropertychange="chkimg(this.value)"/> </BODY> </HTML> 因为FF下(IE8)由于安全因素,无法得到文件路径,只能得到文件名——软件在设计时有意如此 初学者 不知道哪错了 求助获取的vaule塞入select选项中选中 大家帮忙啊 如何使用javascript获得XML文档内容 如何在一个table里的某一指定cell增加一个input? [斑竹请看]CheckBox选择问题!很实用的问题 如果只指交表单中指定的元素? 表单提交问题 关于字符串的问题,100分送上!! 正则表达式替换的问题 找出猴王演示图及代码 js 很简单的问题,把一个图片路径用js赋给<img的src即可!!!
和form1.submit();
即可
form1为表单的name
vv=document.getElementById("fileHead").value;
var tempImg=new Image();
tempImg.src=vv;
//****************得到图片宽度
ww=tempImg.width;
//****************得到图片高度
hh=tempImg.height;
if(ww>140 || hh>150){
alert("Picture size is too big. It should be 140(w)*150(h).");
document.getElementById("form1").reset();
return;
}
if(ww==0){
alert("Please try again.(Error)");
document.getElementById("form1").reset();
return;
}
document.getElementById("form1").submit(); }另外這種寫法擴展性不好,FF用不了
所以加了onload请问5楼的,时间循环是什么东东?可以说说嘛?
提交也没看出问题
或者你试着给 form改个名字比如 <form name="myform"
然后这样提交
document.myform.submit()楼上时间循环的意思可能是加个 setTimeout什么的,但这样依据不足, 就是 onload更保险些
改为
Form1.submit()试试
<input type="file" name="file" id="fileHead" />
<input name="Submit2" type="button" onclick="chargenHead()" value="Upload" />
<img src="" style="display:none" id="testimg" onload="getSize(this)" />
<script language="javascript" type="text/javascript">
function chargenHead()
{
var vv=document.getElementById("fileHead").value;
var reg=new RegExp("\\\\","g");
vv=vv.replace(reg,"/");
vv="file:///"+vv;
document.getElementById("testimg").src=vv;
}
function getSize(o)
{
o.style.display="";
//****************得到图片宽度
ww=o.width;
//****************得到图片高度
hh=o.height;
o.style.display="none";
window.status="width:"+ww+" height:"+hh;
}
</script>
</body>
2007-05-10 15:21
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Author" CONTENT="宝玉">
</HEAD>
<script language="javascript">
<!--
//检查插入是否为图片
var img=null;
function chkimg(inp)
{
if(img)img.removeNode(true);
img=document.createElement("img");
img.attachEvent("onreadystatechange",isimg);
img.attachEvent("onerror",notimg);
img.src=inp;
}
function notimg()
{
alert("您插入的不是图片,请重新选择插入");
}
function isimg()
{
show.insertAdjacentElement("BeforeEnd",img);
show1.innerHTML = "图片大小" + img.fileSize/1024 +"K<br />图片宽度"+ img.offsetWidth +"<br />图片高度"+ img.offsetHeight;
}
// -->
</script>
<BODY>
<div id="show"></div>
<div id="show1"></div>
<input type="file" name="" onpropertychange="chkimg(this.value)"/>
</BODY>
</HTML>