2012-02-29 108 views
3
A HREF鏈接

我有下面的代碼工作的URL參數傳遞到一個表單標籤:傳遞一個URL參數,使用Javascript

<script type="text/javascript"> 
    function getQueryVariable(variable) { 
var query = window.location.search.substring(1); 
var vars = query.split("&"); 
for (var i=0;i<vars.length;i++) { 
var pair = vars[i].split("="); 
if (pair[0] == variable) { 
    return pair[1]; 
    } 
    } 
} 
function onLoad() { 
var value = getQueryVariable("ID"); 
var e = document.getElementById('your-field'); 
e.value = value; 
} 
</script> 

而且......

<body onload="onLoad()"> 
<!-- your form and hidden field goes here --> 
<input type="hidden" name="your-field" id="your-field" /> 

我怎樣才能將相同的值傳遞給HTML鏈接,以便最終結果如下:

<a href="http://www.mysite.com?source=[ID]" > 

其中,[ID]是添加參數所需的代碼片段ameter到鏈接?

在此先感謝。

回答

6

給你鏈接,這樣你應該給一個id:

<a id="YOUR_ID" href="#" > 

然後你有兩種方法來解決這個問題,使用純JavaScript或使用jQuery:

如果你使用jQuery的你可以用你的onLoad功能和內注入以下:

var url = "http://www.mysite.com?source=" + value; 
$("#YOUR_ID").attr("href",url) 

,或者使用純javascript:

var url = "http://www.mysite.com?source=" + value; 
var element = document.getElementById('YOUR_ID'); 
element.setAttribute("href",url) 
1

改變功能的onload這樣:

function onLoad() { 
    var value = getQueryVariable("ID"); 
    var e = document.getElementById('your-field'); 
    e.value = value; 

    var url = "http://www.mysite.com?source=" + value; 
    var element = document.getElementById('YOUR_<A>_ELEMENT_ID'); 
    element.setAttribute("href",url) 
} 

我使用的一段代碼,若昂·阿爾梅達使用jQuery的工作也很好建議,以便他爲榜樣。

祝你好運!

+0

嗨,謝謝:) 請原諒我的無知,但...應該有一個href標籤看起來像什麼? 此外,我有3個不同的href標籤,需要附加值...上面的代碼將工作的任何數量的鏈接? – Lawrence 2012-03-06 04:46:08