使用<input type =“ url” />处理HTTP和HTTPS

时间:2019-05-03 21:34:13

标签: html forms

URL输入<input type="url">具有pattern属性,该属性使我们可以指定JavaScript正则表达式来验证输入值。

在此MDN示例中,提供的模式为pattern="https://.*",期望使用https协议。这意味着http值将不被接受。

<label for="url">Enter an https:// URL:</label>

<input type="url" name="url" id="url"
       placeholder="https://example.com"
       pattern="https://.*" size="30"
       required>

不是所有的URL都是HTTPS,所以这个选项太严格了吗?

在说明pattern attribute的文档中说:

  

如果指定的模式未指定或无效,则无常规   将应用表达式,并且将完全忽略此属性。

我认为这意味着,如果不包括pattern属性,那么www.example.com的值将被接受。但是,似乎并非如此。

问题: 我们如何使用url输入来灵活处理httphttps值?而且,如果用户能够在不指定协议的情况下简单地输入www.example.com,似乎会更简单。

1 个答案:

答案 0 :(得分:1)

pattern="https?://.*"添加到模式:?s使var abc = "Hello"; 为可选。