我正在嘗試使用 jquery 驗證電話號碼長度,當使用者開始輸入自己的內容時,它應該會顯示,我執行了以下程式碼:
function validatePhone(phone) { if (phone.value.length <= 10 && phone.value.length >= 5) { let var = 'Yes'; return var; } else { let var = 'No'; return var; } } function validate() { let result1 = $("#result1"); let phone = $("#phone").val(); result1.text(""); if (validatePhone(phone)) { result1.text(var); result1.css("color", "green"); } return false; } jQuery(function($) { $("#phone").on("input", validate); });
<input type="number" class="form-control" id="phone" name="phone"> <span class="label">Phone Number<span style="color:red">*</span> <span id="result1"></span></span>
但這不起作用,有人可以告訴我這裡出了什麼問題嗎,提前謝謝
P粉2168079242024-03-31 11:09:27
我稍微清理了你的程式碼,基本上沒問題,但你有一些小的語法錯誤和邏輯錯誤。我還建議使用 label
標籤。如果您願意,程式碼可以寫得更短!
function validatePhone(phone) { if (phone.length <= 10 && phone.length >= 5) { return true; } else { return false; } } function validate() { let result1 = $("#result1"); let phone = $("#phone").val(); result1.text(""); if (validatePhone(phone)) { result1.text("great!"); result1.css("color", "green"); } else { result1.text("please input phone number"); result1.css("color", "red"); } } jQuery(function($) { $("#phone").on("input", validate); });
HTML
我還建議你看看 css:valid
規則!
https://developer.mozilla.org/en-US/docs /Web/CSS/:有效