2012-03-06 53 views
-1

我想更換href價值爲所有JQuery的替換HREF值全部用相同的ID

<a id ="replaceValue" href=""> test1 </a> 

<a id ="replaceValue" href="">test2 </a> 

<a>標籤ID兩者相同。我想改變兩者的價值。

$("#replaceValue").attr("href", "test.html"); 

該功能運作良好,但它只是改變第一<a>標籤。請幫助我改變兩個相同的功能。

+5

編號** **必須是唯一的。改爲使用班級。 – 2012-03-06 00:09:33

+0

沒有這些問題,當HTML是有效的唯一ID ..更改ID到類 – charlietfl 2012-03-06 00:11:31

+0

請尊重這個問題。這是一個誠實的問題,考慮到正確的想法,但是錯誤的意圖/實施,並且應該在未來發現這個警告燈。基本上支付它。 – 2012-03-06 03:45:28

回答

4

您應該使用類而不是ID,因爲ID是唯一的。這應該做你需要使用類:

$('a.replaceValue').attr('href','NEW URL HERE'); 
-2
$('#replaceValue').each(function() { 
$(this).attr('href','url'); 
}) 
+4

在ID選擇器上調用'each'沒有任何意義,因爲根據定義,ID是單個項目。在內部,JavaScript只會返回具有該ID的第一個項目,即使DOM中存在多個項目也是如此。 – 2012-03-06 00:13:35

2

ID是唯一的標識符。累積操作

使用的名稱或ALT或類
1
< a class ="replaceValue" href="" > test1 < /a> 

< a class ="replaceValue" href="" >test2 < /a> 

更改ID的,以班爲每個規格的ID必須是唯一的任意頁面

$(".replaceValue").attr("href", "test.html"); 
0

如果你有超過標記沒有控制,你可以通過將id作爲通用屬性並使用jQuery屬性選擇器來選擇所有這些。

,如果你控制了HTML,不這樣做,更改ID,以班。

$('a[id=replaceValue]').attr('href', 'http://myurl.com'); 

實施例:http://jsfiddle.net/ySzCL/1/

+0

運作良好.. Tahnkx。 – Drozzy 2012-03-06 00:35:40

+0

但你是否需要這樣做? – 2012-03-06 00:36:38

+0

爲什麼你必須發佈這個D:Now @ Drozzy的做法都錯了! – 2012-03-06 00:38:14