将值附加到现有锚点(href)中。

5
我已使用JavaScript从一个数据列表模板中捕获了3个值,现在我需要将这些值追加到现有的锚点中,该锚点为:
<a id="link" href='nextpage.aspx?id=<%#Eval("PlateId")%>&pp= #Eval("price")%>'>

我找到了从JavaScript获取锚点href的方法:

<script language='javascript' type="text/javascript" >
    function addLink() { 
        var anchor = document.getElementById("link"); 
        anchor.href = anchor + "&qty=";} 
</script>

但是,我无法在"&qty="后添加js值,我尝试过像这样添加值:
anchor.href = anchor +"&qty=+Value+"

同时,随着这个:

anchor.href = anchor +"&qty='Value' "

我不能将它放在引号之外,因为这样它就不会显示在锚点中。

2个回答

4
anchor.href = anchor + "&qty="

应该是

anchor.href = anchor.href + "&qty="

否则,你就是试图将链接元素转换为字符串!
同时,你仍需要将Value保留在引号外面,否则生成的最终文本将始终完全是那个文本:Value。如果Value是一个变量且不返回您期望的值(例如空值或未定义值),则需要查看声明它的代码并进行更改。

嗨,巴尼,当我写下alert(anchor + "&qty=" + qty + "&preference=" + rb + "&extra=" + text)时,结果正是我想要的:http://localhost:5437/Pages/nextpage.aspx?id=00001&pp=8.00&qty=2&preference=Chicken&extra=YES。所以如果我这样做:anchor.href = anchor或anchor.href +("&qty=" + qty + "&preference=" + rb + "&extra=" + text);什么也不会发生,所以我相信如果alert给我想要的结果,应该有一种方法来实现这个。 - Carlos Siles
问题已解决,我使用了不同的方法。谢谢。 如何使用JavaScript获取aspx单选框和aspx复选框的值?我正在使用这个函数getValue(rb),但它仅适用于HTML控件。非常感谢您的帮助。 - Carlos Siles
这种问题在StackOverflow上已经被问了很多次。这里有一个例子,可能会有所帮助。试着去谷歌一下,大多数常见的Javascript问题都已经被解决了无数次。 - Barney
我对这个问题进行了大量的研究,但我发现所有的解决方案都是针对HTML输入单选按钮的,对于ASPX单选按钮并没有什么帮助。 - Carlos Siles
Carlos,ASPX是服务器用来生成HTML的语言,然后将其发送到浏览器,在那里Javascript可以操纵它。 ASPX单选按钮变成了HTML单选按钮。 - Barney
显示剩余4条评论

0
动态更改 href属性值(或)您可以附加现有URL
提示:1 - 使用jQuery .attr()方法
 $("selector").attr("href", newURL));

提示:2 - 使用 JavaScript 元素选择器 document.getElementById

示例:

<a href="test.php" id="test">TEST URL</a>
var redirect_url = document.getElementById('test');
redirect_url.href = "new url";

(或者)

document.getElementById('test').href = "newURL";

(或者)

使用 setAttribute() 方法 *注意:在 IE 中存在问题

redirect_url.setAttribute("href", "new url");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接