如何使用javascript将标签之间的字符串解析为URL?

如何使用javascript将标签之间的字符串解析为URL?,javascript,parsing,url,Javascript,Parsing,Url,如果我的页面上有这样的元素: <a onclick="openUrl();">04-07-2014</a> 如何使用javascript检索内部04-07-2014,以便将其附加到URL的末尾?openUrl应该是什么样的?一种可能是: 可以更简洁地编写openUrl函数,而无需使用通过以下方式访问的锚元素(在本例中为锚元素)的id: 两个示例都输出了http://www.somewhere.net/04-07-2014 要导航到新位置,请使用: 通过event.tar

如果我的页面上有这样的元素:

<a onclick="openUrl();">04-07-2014</a>

如何使用javascript检索内部04-07-2014,以便将其附加到URL的末尾?openUrl应该是什么样的?

一种可能是:

可以更简洁地编写openUrl函数,而无需使用通过以下方式访问的锚元素(在本例中为锚元素)的id:

两个示例都输出了http://www.somewhere.net/04-07-2014

要导航到新位置,请使用:

通过event.target的innerHTML属性访问节点内容

您可以使用event.target获取当前单击的节点并读取其innerHTML。通过使用window.location.href=。。。;您将获得与单击链接类似的效果。您还可以使用window.location.replace。。最接近重定向的是什么

<script type="text/javascript">
     function openUrl(e){
            var url = 'www.baseUrl.com/';
            window.location.href = url + e.target.innerHTML;
     }
</script>

有关window.location.href=…上差异的详细信息。。vs窗口。位置。替换。。检查我确信有更好的文章,所以关于这个…我记得读了一篇非常好的文章
编辑:我找到了我记得的那篇文章:

谢谢。我想知道,为什么它需要href=?因为如果你的锚元素没有指定a href,文本就不会被识别为链接,用户不能用鼠标点击它。从W3开始,如果HREF属性存在,则锚定是敏感文本:链接的开始-因此,如果未定义,则它不是敏感链接。很好的解决方案。我不知道textContent属性。但似乎IE8不支持它:。是什么使它对许多业务应用程序不可用您还应该在事件处理程序openUrl中使用event.target来获取实际单击的元素。getElementById第二次搜索DOM,这是不必要的,因为事件对象已将其存储在内部。p在第二个示例中应该是一个对象。@L.Monty您是对的。这就是我为旧浏览器编写textContent或innerHTML的原因。innerHTML应该可以正常工作。
function openUrl(){
    var anchorElement = document.getElementById("a1");
    var url = "http://www.somewhere.net/" + anchorElement.textContent;
    alert(url);
}
<a onclick="openUrl(this.textContent);" href="#">04-07-2014</a>
function openUrl(p){
    var url = "http://www.somewhere.net/" + p;
    alert(url);
}
function openUrl(p){
    var url = "http://www.somewhere.net/" + p;
    window.location = url;
}
<script type="text/javascript">
     function openUrl(e){
            var url = 'www.baseUrl.com/';
            window.location.href = url + e.target.innerHTML;
     }
</script>
    <a  href="#" onclick="openUrl(event);">04-07-2014</a>