2012-01-10 53 views
1

我有一個這樣的錨在我的網站:.replace和主持人

<a href="javascript:OpenNewWindow('/PhotoDetails.asp?ProductCode=ProductCode', 640, 480)" title=""> 

使用jQuery,如何纔有可能與/ProductDetails更換javascript:OpenNewWindow('/PhotoDetails和替換', 640, 480)什麼也沒有?

我試過.replace,但是因爲內容中有單引號,所以很複雜。

謝謝。

+2

我會放棄內聯JS和使用一個單獨的處理程序與變量。 – Blazemonger 2012-01-10 21:15:35

+0

@ mblase75 - 這將是理想的解決方案,+1 – Hacknightly 2012-01-10 21:18:06

+0

@ mblase75整個問題是我如何擺脫內聯js – henryaaron 2012-01-10 21:18:07

回答

1

我不是正則表達式大師,但這裏是一個簡單的indexOf解決方案,使用單引號作爲邊界。

http://jsfiddle.net/CWjV5/3

$('a').each(function() { 
    var href = $(this).prop('href'); 
    href = href.substring(href.indexOf("'") + 1, href.lastIndexOf("'")); 
    href = href.replace('Photo', 'Product'); 
    $(this).prop('href', href); 
});; 
+0

但我必須用單詞產品 – henryaaron 2012-01-10 21:18:55

+0

@ user1090389替換詞照片 - woops,didn'不用注意那一點。更新了我的答案。 – mrtsherman 2012-01-10 21:23:23

+0

唯一的問題是,我不能像這樣實施它,我的網站還有其他的錨點。爲了特別針對我想要修改的錨點,我將其更改爲:'table.class1 tbody.class2 tr。 class3 td.class4 a',它不起作用。 – henryaaron 2012-01-10 21:32:37