如何使用 JavaScript 检测文本区域中的 url?使用 Facebook,您可以添加一个 url,它会在您完成粘贴/输入后立即检测到该地址。如何才能做到这一点?我对回调函数等做了很多研究,但想知道如何检测实际的 url?
最佳答案
如果您正在使用 jQuery,最简单的方法是使用 $.change()。
假设您有一个表单域:
<input id="myField" type="text"/>
现在您可以将更改事件绑定(bind)到它,同时查看它是否是一个有效的 url:
$('#myField').keyup(function() {
if(isUrl($(this).val()){
//Show the url in an alert box
alert($(this).val());
}else{
//do something if its not a url
}
});
然后您将拥有一个检查 url 并返回 bool 值的函数。请注意,我从 here 中获取了这个
function isUrl(s) {
var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
return regexp.test(s);
}
免责声明:我没有测试过任何 javascript,但这应该让您对如何实现这一点有一个很好的了解。
关于javascript - 如何使用 javascript 回调函数检测文本区域中的 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6803463/