如何将 JavaScript 结果添加到静态 HTML href 属性

How do I add a JavaScript result to a static HTML href attribute?

本文关键字:静态 HTML href 属性 添加 JavaScript 结果      更新时间:2023-09-26

如果我有一个名为 getSomeStringValue() 的 JavaScript 方法,有没有办法提取该值并将其用作链接的href,如下所示?

(我知道以下代码不起作用

<a href="$:getSomeStringValue()" target="_blank">
    My Link
</a>

我认为这会起作用:

<a href="#" target="_blank" id="mylink">
    My Link
</a>
<script>
document.getElementById("mylink").href = getSomeStringValue();
</script>

只需这样做:

<a href="javascript:getSomeStringValue()" target="_blank">
    My Link
</a>

getSomeStringValue()中,您可以做到:

function getSomeStringValue(){
   //some code
   window.location = somewhere;
}

我使用了@Neal发布的想法,并对其进行了一点调整。 如果有人好奇,这是我最终使用的代码......

<a href="#" onclick="$:loadNewURL(parameter1, parameter2)">
    My Link
</a>
<script>
function loadNewURL(parameter1, parameter2) {
    var newURL = "http://";
    if (parameter1 == "Some Value")
        window.location = newURL + "/somepageA.aspx?detail=" + parameter2;
    else
        window.location = newURL + "/somepageB.aspx?info=" + parameter2;
}
</script>