2010-01-23 63 views
1

我需要的是這樣的:如何添加一個變種,以HREF

var link = " http://www.google.com"; 

<a href='link' /> 

所以我需要使用一個變量作爲href attribue一個環節。這可能嗎?

它與"<a href= '" + link + "' />"一起工作。有沒有更好的辦法?

回答

3

您應該在服務器上設置href值,對此使用腳本是不好的設計。

然而,要回答這個問題,可以通過使用腳本來設置A元素的href屬性,一旦它在DOM,完成如:

 
<a href="<a useful URI if javascript not available>" id="a0">foo</a> 

<script type="text/javascript"> 
    var a = document.getElementById('a0'); 
    if (a) { 
    a.href = "http://www.google.com"; 
    } 
</script> 

當然也有其他一千各種方式,都有他們的陷阱。因此,請在服務器上設置值並避免它們全部。

-- 
Rob
0

使用jQuery,這將是

var link = "http://www.google.com"; 
$("a[href='link']").attr("href", link); 

雖然這不會降低優雅的javascript應該被關閉,你可能會想在href反正用別的東西,而不是選擇。

+0

Jetpacks _are_ JavaScript。無法在關閉JavaScript的情況下運行它們。 – 2010-01-23 00:48:32

0

如果你實際上是寫兩個這些代碼行的,這將是更容易使用寫

<a href="http://www.google.com">Google</a>

否則,你將需要使用JavaScript來設置你的鏈接的href財產,這將需要得到一個參考(這意味着你應該設置其id屬性)。

所以,你可以寫這樣的:

<a id="myLink">Google</a>

,並在你的JavaScript有:

document.getElementById("myLink").href=link

但首先,請想想這是否是真的有必要(或提供一些在你的問題更多的細節)。

0

您正在使用Jetpack,因此您可以做<a href={link}/>.toXMLString()

如果您只想創建一個<a/>元素,請使用以下內容。

var anchor = document.createElement("a"); 
anchor.href = link; 
相關問題