首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将javascript的结果显示为HTML链接?

如何将javascript的结果显示为HTML链接?
EN

Stack Overflow用户
提问于 2018-06-26 07:43:50
回答 2查看 1.5K关注 0票数 0

我使用以下代码来检索服务器的主机名,并向其追加一些文本(文件名),然后将其显示在html页面上。

代码语言:javascript
复制
<script type="text/javascript">
    function getBaseUrl() {
        var re = new RegExp(/^.*\//);
    }
</script>

<script type="text/javascript">
    document.write(getBaseUrl() + "filename.ext");
</script>

这将生成一个服务器URL,比如https://fqdn/folder/filename.ext,这正是我所需要的。我试图从它创建一个链接的所有东西都破坏了它。如何使生成的文本可点击?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-26 07:52:46

做起来很简单-

代码语言:javascript
复制
const link = getBaseUrl()+ "filename.ext";

createLinkNode(link, document.body);

// defining a function to create a link node, however this isn't neccessary,
// you could just hard code the logic above.
// I wouldn't recommend setting innerHtml in lieu of making a text node however.
function createLinkNode(url, parent) {
  const linkTextNode = document.createTextNode(url);
  const linkNode = document.createElement('a');
  linkNode.href = url;
  linkNode.appendChild(linkTextNode);

  parent.appendChild(linkNode);
}

示例:https://jsfiddle.net/f4wxvLky/3/

票数 0
EN

Stack Overflow用户

发布于 2018-06-26 08:25:04

尝试一下,我假设getBaseUrl()是有效的,尽管看起来不像这样。只需要提醒一下,<a>标记需要在<script>块下

代码语言:javascript
复制
<script>
    function getBaseUrl() {
        var re = new RegExp(/^.*\//);
    }
</script>

<a href="javascript:" onclick="location.href=getBaseUrl() + 'filename.ext'">Click</a>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51033111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档