2012-01-05 19 views
0

我有一個包含大量JavaScript的URL。JavaScript的條形URL

我想剝去當然JavaScript的所有JavaScript的URL!

這裏是我的HTML

<a id="product_photo_zoom_url" href="javascript:OpenNewWindow('/PhotoDetails.asp?ShowDesc=N&PhotoNumber=3&ProductCode=TCP65GT30', 640, 480); void(0);" title="" rel="lightbox"> 

基本上我想要的URL,只是看起來像這樣:

<a id="product_photo_zoom_url" href="/PhotoDetails.asp?ShowDesc=N&PhotoNumber=3&ProductCode=TCP65GT30" title="" rel="lightbox"> 

有許多這樣的實例,使修剪關閉第一個和最後十個字符是不夠的。

通過ID獲取元素product_photo_zoom_url會很好。

謝謝你幫助我!

+0

解決方案是否需要在原JS?或者你在使用其他js庫,如jquery。 – Dessus 2012-01-05 02:01:07

+0

@Dessus jQuery 1.4.2 ... – henryaaron 2012-01-05 02:02:00

回答

2

剛剛獲得單引號之間的文本:

var href = "javascript:OpenNewWindow('/PhotoDetails.asp?ShowDesc=N&PhotoNumber=3&ProductCode=TCP65GT30', 640, 480); void(0);"; 
var url = /'(.+?)'/.exec(href)[1]; 

Demo

而且,你不應該使用複式元素與同id,它是無效的。 id s意味着獨特。您應該使用class es代替。如果可以的話,你應該改變它們。

+0

我如何使這適用於ID爲product_photo_zoom_url的錨點? – henryaaron 2012-01-05 02:04:44

+0

不錯,非常瘦。您可以使用JQuery來修改它,以使用類似$('a [href^=「javascript」]')的方式查找所有錨點標記。each(function(){}) – Dessus 2012-01-05 02:18:21

+0

@ user1090389:因爲您使用的是jQuery,請嘗試這:http://jsfiddle.net/minitech/QJQRa/1/ – Ryan 2012-01-05 02:32:46

2

如果你只是希望它在一個錨上運行,你可以這樣做:

var el=document.getElementById('product_photo_zoom_url'); 
el.href=/'(.*?)'/.exec(el.href)[1];