Javascript 即使输入值不符合要求,也会发送该值

Javascript 即使输入值不符合要求,也会发送该值,javascript,html,Javascript,Html,当我点击“添加”按钮时,它会添加来自“addomain”的值,而不满足模式的要求 我想用JS将模式设置为html,并在其压缩之后,确定用户在输入中引入的“值”是否符合要求 您知道使用JavaScript实现这一切的方法吗? <input type="text" placeholder="Enter Domain" id="adddomain" name="adddomain" required size="15" pattern="^(?:http(s)?:\/\/)?[\w.-]{1,1

当我点击“添加”按钮时,它会添加来自“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>

AddClose

您可以使用
表单使用
模式
属性(如@aMJay所述),这是解决问题的最快、最优雅的方法

尽管如此,如果您不想使用
表单
,也可以只使用JavaScript的
RegEx
类检查您的值

function addentrys(){
让inputValue=document.getElementById(“adddomain”).value;
设regexpatern=/^(?:http(s):\/\/)?[\w.-]{1,16}[A-Za-z0-9]{1,5}$/g;
//调用特定函数
//console.log(regexpatern.test(inputValue));//如果匹配,则打印true。
regexpatern.test(inputValue)?yourFunctionIfMatch():console.log(false);
}
函数yourFunctionIfMatch(){
console.log(true);//代替console.log(true)做任何你喜欢的事情
}


AddClose
您是否在寻找类似于使用vanilla js设置模式属性的东西?如果是这样的话,也许您正在寻找这样的东西:
document.getElementById(“adddomain”).setAttribute(“pattern”,“YOURPATTERN”)
-如果您想在JavaScript中使用模式检查值,请查看这里的
RegEx
:如果需要,它可以是JQuery,而不仅仅是添加属性,我需要类似If(“value”=“pattern”){alert“Hello”}@r3dst0rm在这个网站上没有任何关于使用petternOk检查值的内容。谢谢你,它工作正常,但是如果它与另一个函数匹配,你能更改console.log吗?只有当它匹配时,您才能执行以下操作:
regexpatern.test(inputValue)?yourFunctionIfMatch():console.log(false)。然而,
yourFunctionIfMatch()
是一些可以调用或定义的函数。对不起,我是JS的新手,我找不到放置yourFunctionIfMatch()的方法:console.log(false);它告诉意外令牌:我已经更新了我的答案,请检查您的代码是否与上面的匹配。在我看来,你缺少了一个问号或类似的东西。