2013-03-11 40 views
0

我想要替換一個url的特定部分,但只在一個特定的div,一直在嘗試與正則表達式(是的,我是一個正則表達式新手),但不能繞我的頭周圍要得到這個工作,並會並欣賞任何援助之手jQuery的正則表達式替換字符串查找功能

我要替換/圖片/一個新的文件夾/設計/ abtester/nyaproduktbilder/ 之所以這樣,是我要運行一個網站範圍的A/B測試新產品圖片

我有這部分代碼

<div class="visaprodbild"><a class="fancyBoxLink" rel="produktbilder" href="/images/BR501.jpg"><img class="hand" alt="" title="" src="/images/BR501.jpg" border="0" width="330px"></a></div> 

問題是我無法找到並替換/ images/part,導致頁面上有更多其他圖像使用/ images /,我不能將原始產品圖像移動到新文件夾。

所以我需要在div內識別上述

對不起的/圖像/一部分,如果這是爲幫助一個不明確的問題,只是這樣就失去了我很難解釋什麼,我需要做的。

回答

-1

添加一個ID <a><img>和改變它的屬性與$("#id").attr();

+0

爲什麼downvote?也許不是最好的答案,但是,這是他的問題的解決方案。 – Mollo 2013-03-11 22:04:08

+0

好主意,thx很多你的幫助。問題是我不能添加ID因爲我沒有任何控制代碼作爲共同託管的中央解決方案 – Per 2013-03-12 21:18:50

0

我不認爲你甚至不需要正則表達式..你可以做.replace('/images/','yournewpath')

$('div.visaprodbild img.hand').attr('src',function(i,v){ 
    return v.replace('/images/','/your new path/'); 
}); 

通過使用attr('src',function(i,v)舊值作爲參數傳入並且您可以返回修改後的函數

FIDDLE

+0

哇,像一個魅力工作:D <3你剛剛救了我的一天。 Thx m8 由於某些原因,原始圖像名稱有時在名稱中包含(),如BR501(1).jpg。 如果圖像url包含(),是否可以清除它? – Per 2013-03-11 22:32:47

+0

你只是想刪除所有'('和')'? – 2013-03-11 23:34:47