你能帮助我纠正下面javascript中的标点符号吗?粘贴在visual studio中时发现错误。我不熟悉javascript!谢谢你...
function showLocalImage(imgname) {
imgname = imgname.replace(/\\/g,”/”);
imgname = imgname.replace(/\’/g,”\\’”);
content = “<img src=\”" + String(imgname) + “\” border=\”0\” height=\”150\” weight=\”150\”>”;
eval(‘document.getElementById(“imagepreview”).innerHTML=\” + content +”‘”);
document.getElementById.imagepreview.style.visibility =’visible’;
}
答案 0 :(得分:1)
这是因为您的某些引号字符实际上来自不同的字符编码,请使用以下代码:
function showLocalImage(imgname) {
imgname = imgname.replace(/\\/g,"/");
imgname = imgname.replace(/\’/g,"\\'");
content = "<img src=\"" + imgname + "\" border=\"0\" height=\"150\" weight=\"150\">";
var image_preview = document.getElementById("imagepreview");
image_preview.innerHTML = content;
image_preview.style.visibility = 'visible';
}
有几件事:
您应该尽可能多地重用DOM结果集和元素,以避免每次需要引用元素或元素集时都必须对DOM运行查询。
您应该尽量避免使用eval
函数。
eval
== EVIL
答案 1 :(得分:1)
您似乎使用了错误的引号字符(” or ‘
)。用“或”代替它们,你会很好。使用ascii文本编辑器,而不是文字处理器进行打字。
答案 2 :(得分:0)
您应该避免eval
,并声明content
变量,并声明对imagepreview
元素的引用:
function showLocalImage(imgname) {
imgname = imgname.replace(/\\/g,"/");
imgname = imgname.replace(/\'/g,"\\'"); //Is this really necessary?
var content = "<img src=\"" + imgname + "\" border=\"0\" height=\"150\" weight=\"150\">";
var img = document.getElementById("imagepreview");
img.innerHTML = content;
img.style.visibility ='visible';
}