慕萊塢森
2023-06-15 16:04:15
腳本:NewsletterScript.jsfunction formValidation() { var fname = document.getElementById('firstName').value; var lname = document.getElementById('lastName').value; var pnumber = document.getElementById('phoneNumber').value; var email = document.getElementById('e-mail').value; if (FirstName(fname)) { } if (LastName(lname)) { } if (Country(country)) { } if (Email(email)) { } return false;}/*first name input validation*/function FirstName(fname) { var message = document.getElementsByClassName("error-message"); var letters = /^[A-Za-z]+$/; if ( fname =="" || fname.match(letters)) { text=""; message[0].innerHTML = text; return true; } else { text="First name should contain only letters"; message[0].innerHTML = text; return false; }}/*last name input validation*/function LastName(lname) { var message = document.getElementsByClassName("error-message"); var letters = /^[A-Za-z]+$/; if ( lname =="" || lname.match(letters)) { text=""; message[1].innerHTML = text; return true; } else { text="Last name should contain only letters"; message[1].innerHTML = text; return false; }}我試圖讓這個(gè)驗(yàn)證循環(huán)直到滿足條件,目前這只工作一次,如果再次單擊按鈕,它會(huì)提交。下面的按鈕。由于腳本太長(zhǎng),我無(wú)法上傳所有腳本,但它剛剛獲得了其他驗(yàn)證,例如電話號(hào)碼等,我們將不勝感激,干杯!
2 回答
小唯快跑啊
TA貢獻(xiàn)1863條經(jīng)驗(yàn) 獲得超2個(gè)贊
如果您想要的是僅當(dāng)四個(gè)驗(yàn)證函數(shù)返回 true 時(shí)才formValidation()返回,您應(yīng)該這樣寫(xiě),而不是放置空的 if 語(yǔ)句:true
return FirstName(fname) && LastName(lname) && Country(country) && Email(email);
formValidation()如果其中一個(gè)返回 false,這種方式將返回 false
狐的傳說(shuō)
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊
您應(yīng)該考慮在提交按鈕上使用form?onsubmit代替。onclick
代替:
<input class="button" type="submit" value="Submit" name="submit" onClick="formValidation()" />
考慮使用表單提交并且不要忘記return關(guān)鍵字:
<form onsubmit="return formValidation();" > /* ... */ </form>
添加回答
舉報(bào)
0/150
提交
取消
