【发布时间】:2018-11-04 15:41:09
【问题描述】:
我有一个函数,它显示/应该从文本区域输出 url(它应该只列出 url)。但目前它只向我显示最后的结果/网址。我怎样才能输出所有的数组/网址(也许是一个 div)。
我的代码:
<textarea id="textarea"></textarea>
<div id="converted_url"></div>
<script type="text/javascript">
$("#textarea").on("change keyup paste", function() {
var text=document.getElementById("textarea").value;
var urlRegex = /(https?:\/\/[^\s]+)/g;
text.replace(urlRegex, function(url) {
var link = '<div><a href="' + url + '">' + url + '</a></div>';
document.getElementById("converted_url").innerHTML=link
})
});
</script>
此刻输出(使用此代码):
希望(应该):
【问题讨论】:
-
您的
.replace()回调总是完全覆盖<div>内容。 -
但它并没有像我所知的那样覆盖。它只是输出最后一个 url...
-
你知道我怎样才能得到所有的网址吗?
-
在调用
.replace()之前清除<div>,而不是更新.innerHTML将URL 累积在一个字符串中。然后在.replace()之后将.innerHTML设置为字符串。 -
对不起,我不明白...你能把代码发给我吗?
标签: javascript regex url output textarea