我有一个文本框,用户可以在其中输入名为Check link的URL和按钮。在单击按钮时,应打开一个新窗口,其中包含用户输入的URL。如果我输入网址为“http://google.com”,则输入window.open('http://google.com');工作正常,但如果我输入“www.google.com”,则它会附加到当前窗口网址(http:// localhost:1234www.google.com),这不是有效的网址。如何使这项工作?
提前致谢
答案 0 :(得分:1)
检查&前置
if (!/^(http:|https:)/i.test(url))
url = "http://" + url;
答案 1 :(得分:1)
试试这个:
function f(url) {
if (url.indexOf("http://") == -1) {
url = "http://" + url;
}
window.open(url);
}
答案 2 :(得分:0)
如果您的问题是“我如何测试一个字符串是否以'http://'开头,如果没有预先添加它?”那样的话:
var url = "somestring.com"; // as set from your textbox
if (0 != url.toLowerCase().indexOf("http"))
url = "http://" + url;
在进行此测试之前修剪前导和尾随空格是明智的,但我会将其作为练习留给读者......
答案 3 :(得分:0)
添加一个onclick按钮功能并处理该文本。
function checkLink() {
var url = document.getElementById("textbox-id").value;
if(url.substr(0,7) != "http://") {
alert("Invalid URL! Please make it like http://myurl.com");
return false;
}
}