[英]Validating E-Mail address using JavaScript or JQuery
我必須使用JS或JQ驗證電子郵件地址。 現在,我正在使用JS,但無法將文本框的值作為JS的參數傳遞。 我希望在onchange上實現。 我發現解決方案只使用一個按鈕來驗證我不想要的。
這是HTML代碼。
<div class="form-group">
<label class="control-label">Father's E-Mail Address</label>
<input maxlength="30" pattern=".{1,50}" onchange="validateEmail(document.getElementById('txtFatherEmail').value);" title="Input Invalid" type="text" required="required" class="form-control" placeholder="Enter Father's E-Mail Address" id="txtFatherEmail" runat="server"/>
</div>
這是我使用過的JS。
function validateEmail(email) {
var emailReg = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
var valid = emailReg.test(email);
if (!valid) {
alert("False");
} else {
alert("True");
}
}
我也想知道是否有更好的方法可以做到這一點。
如果我理解正確,則您想在輸入時驗證輸入。
為此,您可以使用onkeyup事件。
<div class="form-group">
<label class="control-label">Father's E-Mail Address</label>
<input maxlength="30" pattern=".{1,50}" onkeyup="validateEmail(this.value);" title="Input Invalid" type="text" required="required" class="form-control" placeholder="Enter Father's E-Mail Address" id="txtFatherEmail" runat="server"/>
</div>
為什么將getElementById與“ value”一起使用? 您不應該使用jquery語法嗎? 請記住,jquery元素不是javasript don元素。 也許那是訣竅...
function isvalid(x){
regexp1 = /@/g
gmail = /gmail.com/g
hotmail = /hotmail.com/g
if(regexp1.test(x) == true){
if(x.match(regexp1).length == 1){
x = x.split("@")
if(gmail.test(x[1]) == true){
if(x[1].match(gmail).length == 1 && x[1].length == 9){
alert("ok valid")
}else{
alert("not valid")
}
}else if(hotmail.test(x[1]) == true){
if(x[1].match(hotmail).length == 1 && x[1].length == 11){
alert("ok valid")
}else{
alert("not valid")
}
}else{
alert("no mail")
}
}else{
alert("too much @")
}
}else{
alert("no @")
}
}
此功能是jquery電子郵件檢查功能,它僅查找gmail和hotmail,如果您只想從hot和gmail檢查電子郵件,則它是可靠的功能
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.