我有以下代码用于将URL参数传递给表单标记:
<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]是将参数添加到链接所需的任何代码段吗?
提前致谢。
答案 0 :(得分: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 :(得分: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)
}
我正在使用Joao Almeida建议的那段代码,所以他使用jQuery的例子也很好。
祝你好运!