苦恼啊!!!项目做完测试发现js在各大浏览器上存在不兼容问题!!function CheckImgCss(o)
{
if (!/\.((jpg)|(bmp)|(gif)|(png))$/ig.test(o.value))
{
alert('只能上传jpg,bmp,gif,png格式图片!');
o.outerHTML = o.outerHTML;
}
}
这段js在FF浏览器上只提示类型不对,FileUpload不清空!!
alert在opera浏览器上出现“停止执行此页面中的脚本”钩上后js没用了!!直接提交了!!
哪位大虾帮帮忙!!%>_<%
{
if (!/\.((jpg)|(bmp)|(gif)|(png))$/ig.test(o.value))
{
alert('只能上传jpg,bmp,gif,png格式图片!');
o.outerHTML = o.outerHTML;
}
}
这段js在FF浏览器上只提示类型不对,FileUpload不清空!!
alert在opera浏览器上出现“停止执行此页面中的脚本”钩上后js没用了!!直接提交了!!
哪位大虾帮帮忙!!%>_<%
解决方案 »
- DataList区域修改问题
- ie,ff下不同
- 多表 分页 查询问题
- GridView 中如何确认选中行。。
- asp.net 数据库备份相对路径问题
- 紧急求助!关于验证后按钮失效问题! 请兄弟门帮忙!
- public class MyClass : IDisposable {}--意思是定义一个非托管的什么...?请问这样定义有什么作用,什么情况下这样定义?
- 超级高手帮小弟解决一下:公共语言运行库检测到无效的程序。错误问题
- IIS浏览网页乱码,怎么解决?
- 烦了3天的一个问题了,后台程序C#处理按键事件,不用JAVASCRIPT
- 这个jmail有人用过么?
- silverlight开发一个涂鸦板问题
难道都换到后天判断%>_<%
var tempDiv=document.createElement("div");
tempDiv.appendChild(o.cloneNode(true));
用tempDiv.innerHTML获取o的outerHTML。
HTMLElement.prototype.__defineSetter__("outerHTML",function(sHTML) {
var r=this.ownerDocument.createRange();
r.setStartBefore(this);
var df=r.createContextualFragment(sHTML);
this.parentNode.replaceChild(df,this);
return sHTML;
}); HTMLElement.prototype.__defineGetter__("outerHTML",function() {
var attr;
var attrs=this.attributes;
var str="<"+this.tagName.toLowerCase();
for (var i=0;i<attrs.length;i++) {
attr=attrs[i];
if(attr.specified)
str+=" "+attr.name+'="'+attr.value+'"';
}
if(!this.canHaveChildren)
return str+">";
return str+">"+this.innerHTML+"</"+this.tagName.toLowerCase()+">";
}); HTMLElement.prototype.__defineGetter__("canHaveChildren",function() {
switch(this.tagName.toLowerCase()) {
case "area":
case "base":
case "basefont":
case "col":
case "frame":
case "hr":
case "img":
case "br":
case "input":
case "isindex":
case "link":
case "meta":
case "param":
return false;
}
return true;
});
}
将解决方法贴出来:
将js方法改为
function CheckImgCss(upid,spanid)
{
if (!/\.((jpg)|(bmp)|(gif)|(png))$/ig.test(document.getElementById(upid).value))
{
alert('只能上传jpg,bmp,gif,png格式图片!');
var html=document.getElementById(spanid).innerHTML;
document.getElementById(spanid).innerHTML=html;
return false;
}
}
然后在前台页面放一个span将FileUpload包起来就行,O(∩_∩)O~可惜第二个问题不知道有什么好的方法解决%>_<%