使用javascript获取并验证用户输入的网址

时间:2017-12-15 10:03:56

标签: javascript forms validation input

我输入了一个网址,必须检查它是否是一个包含JavaScript的网址。

Firefox中的控制台并不表示代码中的任何错误(调试器也没有指示任何内容),但它没有运行。

我还试图在没有验证的情况下显示输入但没有



document.getElementById("link").addEventListener("click", linkfuction, false);

function linkfuction() {
  var link = document.getElementById("general-link").value;

  document.getElementById("1").innerhtml = "link";

  function ValidURL(link) {
    var regex = /(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-\/]))?/;
    if (!regex.test(link)) {
      document.getElementById("1").innerhtml = "Enter a valid url";
      return false;
    } else {
      return true;
    }
  }

}

<div style="padding-bottom: 1rem;">
  <form><input type="text" id="general-link"><input type="button" id="link" value="Download"></form>
</div>
<div style="font-size: 1.5rem">
  <p id="1"></p>
</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您没有呼叫ValidURL功能。 你也犯了错误innerhtml {@ 1}}。

有关工作示例,请参阅代码段。

innerHTML
document.getElementById("link").addEventListener("click", linkfuction, false);

function linkfuction(){
var link = document.getElementById("general-link").value;

document.getElementById("1").innerHTML = "link";

var isValid = ValidURL(link)

alert(isValid);

}

function ValidURL(link) {
    var regex = /(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-\/]))?/;
    if(!regex.test(link)) {
        document.getElementById("1").innerHTML = "Enter a valid url";
      return false;
    } else {
        return true;
    }
}