javascript - 如何将 anchor href 属性添加到选项对象?

标签 javascript html

我正在尝试在 HTML 的下拉列表中创建超链接。 我能够向下拉列表添加文本,但添加 href 属性对我不起作用。 请问有什么建议吗?

<!DOCTYPE html>
<html>
<body onload="loadAgeSelector()">
<select id="yearselect"></select>
<script>
function loadAgeSelector()
{
    var startyear = 1900;
    var endyear = 2014;
    for (var i = startyear;i<=endyear;i++){
        node=document.createElement("Option");
        textnode=document.createTextNode(i);
        node.appendChild(textnode);

        var att = document.createAttribute( "href" );
        att.value = "https://www.google.com/" ;
        node.setAttributeNode(att); 
        document.getElementById("yearselect").appendChild(node);
    }
}
</script>
</body>
</html>

最佳答案

您应该监听更改事件然后处理链接,测试以下代码:

function loadAgeSelector()
{
    var select = document.getElementById("yearselect");
    var startyear = 1900;
    var endyear = 2014;
    for (var i = startyear;i<=endyear;i++){
        node=document.createElement("Option");
        textnode=document.createTextNode(i);
        node.appendChild(textnode);
        node.value = "https://www.google.com/?testid=" + i;
        select.appendChild(node);
    }

    select.onchange = function () {
        var link = this.value;
        window.open(link);//or if you want to open in current tab: window.location.href = link;
    }

}

关于javascript - 如何将 anchor href 属性添加到选项对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56681500/

相关文章:

语句中的 Javascript 逻辑运算符 &&?

html - Angular 6 - 移动设备上的按键空间

html - 如何设置元素的宽度等于设备宽度?

javascript - 拇指前的样式输入范围背景

javascript - redux 与 mvc 之类的模型

Javascript:如何将嵌套的字符串数组拆分为数字

javascript - 在谷歌地图反向地理编码中获取明确的城市名称

html - 主体背景颜色和图像中的 div

html - DIV 内的 CSS DIV

html - 带有 ID 属性的结束标记