当我点击"添加"按钮,它添加来自" addomain"的值没有满足模式的要求。
我想用JS将模式设置为html,并在它完成后如果"值"用户在输入上引入的是符合要求
您是否知道使用JavaScript完成所有操作?
<input type="text" placeholder="Enter Domain" id="adddomain" name="adddomain" required size="15" pattern="^(?:http(s)?:\/\/)?[\w.-]{1,16}[A-Za-z0-9]{1,5}$">
<button onclick="addentrys()">Add</button><button onclick="CloseInputA()">Close</button>
答案 0 :(得分:2)
您可以使用pattern
(如@aMJay所述)使用form
属性,这是解决问题的最快速,最优雅的解决方案。
尽管如此,如果您不想使用form
,您还可以仅使用JavaScript的RegEx
类检查您的值。
function addentrys() {
let inputValue = document.getElementById("adddomain").value;
let regexPattern = /^(?:http(s)?:\/\/)?[\w.-]{1,16}[A-Za-z0-9]{1,5}$/g;
// To call a specific function
//console.log(regexPattern.test(inputValue)); // prints true if it matches.
regexPattern.test(inputValue) ? yourFunctionIfMatch() : console.log(false);
}
function yourFunctionIfMatch() {
console.log(true); // instead of console.log(true) do whatever you like
}
<input type="text" placeholder="Enter Domain" id="adddomain" name="adddomain" required size="15">
<button onclick="addentrys()">Add</button><button onclick="CloseInputA()">Close</button>
注意:我不知道这是否有意,但您的表达式也匹配以下字符串:https
。