2012-03-03 121 views
0
<img src="linkclick.aspx?fileticket=0" id="directory-image"> 

比方說,當這來了,我要替換「linkclick.aspx?fileticket = 0」與「圖像/無avatar.gif」jQuery來代替SRC爲img標籤

我認爲這可以用Jquery完成,但我不能輕易搞清楚。


<script type="text/javascript"> 

function replaceIMGText() { 

var imgsrc = $("img#directory-image").attr("src"); 
if imgsrc = "linkclick.aspx?fileticket=0" { 
imgsrc="images/no-avatar.gif" 
} 
else {} 
$("img#directory-image").attr("src", imgsrc) 

} 


$(document).ready(replaceIMGText); 
$("html").ajaxStop(replaceIMGText); 
</script> 

任何幫助表示讚賞!

回答

1

這是一個Javasript語法錯誤:

if imgsrc = "linkclick.aspx?fileticket=0" 

您需要括號:

if(imgsrc = "linkclick.aspx?fileticket=0") 

然後你有一個語義錯誤,你也需要改變你的===

if(imgsrc == "linkclick.aspx?fileticket=0") 

如果需要,還可以刪除else {},s因斯它什麼也不做,你應該添加後分號:

imgsrc="images/no-avatar.gif" 

和:

$("img#directory-image").attr("src", imgsrc) 
+0

@Goomba - 您可以刪除else {}語句,因爲它是空的 – Tom 2012-03-03 20:32:47

+0

謝謝,我嘗試了以下,它的工作原理,但它用ID#目錄圖像替換所有圖像與no-avatar.gif ...包括那些是實際圖像。 – Goomba 2012-03-04 16:06:40

+0

任何人都可以解釋爲什麼這不起作用: $(「img#directory-image」)。attr(「src」)。replace(「linkclick.aspx?fileticket = 0」,「images/no-avatar。 GIF「); 我是否需要以某種方式調用此函數? – Goomba 2012-03-04 16:25:48

0

其實這個解決方案很好工作沒有任何的jQuery:

jQuery/JavaScript to replace broken images

function ImgError(source){ 
    source.src = "/images/noimage.gif"; 
    source.onerror = ""; 
    return true; 
} 

<img src="someimage.png" onerror="ImgError(this);"/>