Javascript将变量检测为超链接并将其显示为链接

时间:2013-08-27 05:57:32

标签: javascript

我在AJAX返回的javascript中有一个变量,它可能包含一个简单的字符串或像<a href="www.example.com">EXAMPLE</a>这样的href代码。我必须检测它是链接还是简单的字符串并相应地显示。

如果它是一个链接,那么hyperLink将以文本显示为EXAMPLE,或者如果它是一个简单的字符串,那么它必须按原样显示。 我可以使用

以角度进行
<span ng-bind-html-unsafe="name_of_variable">

如何使用javascript变量在javascript代码中执行此操作?

2 个答案:

答案 0 :(得分:1)

如果变量data包含来自AJAX的响应,请执行:

document.getElementById('where_to_put_it').innerHTML = data;

如果data看起来像一个超链接,HTML将被解析并且可以被点击。如果它是纯文本,它只会以这种方式放入文档中。

使用您的日历插件可能会出现这样的问题:

var match = data.match(/<a\s+href=['"](.*?)['"]\s*>(.*?)<\/a>/i);
if (match) {
    event = { title: match[2],
              url: match[1]
            };
} else {
    event = { title: data };
}

答案 1 :(得分:0)

你需要检查包含url的数据字符串,我相信下面的网址会帮助你解决问题.. Check if a Javascript string is a url Regular Expression to find URLs in block of Text (Javascript) How to find if a text contains url string