我正在創建一個注冊系統并使用 JavaScript 制作一個代碼,該代碼檢查用戶輸入的電話號碼,并且只有在 10 個字符長時才允許使用它。
到目前為止,這是我的代碼:
JavaScript:
<script type="text/javascript">
function phoneIsValid()
{
var phoneL = document.getElementById("phone").length;
if (phoneL != 10)
{
document.getElementById("phoneErr").innerHTML = "invalid phone number"
return false;
}
else
{
document.getElementById("phoneErr").innerHTML = "";
return true;
}
}
</script>
HTML:
<input type="text" id="phone" name="phone" />
<a id="phoneErr"></a>
問題是它總是回復電話號碼不是 10 個字符長,即使它是。我究竟做錯了什么?我不太了解 Javascript,也無法在互聯網上找到解決方案。
uj5u.com熱心網友回復:
function phoneIsValid()
{
var phoneL = document.getElementById("phone").value.length;
if (phoneL != 10)
{
document.getElementById("phoneErr").innerHTML = "invalid phone number"
return false;
}
else
{
document.getElementById("phoneErr").innerHTML = "";
return true;
}
}
function checkPhone() {
if(phoneIsValid()) {
alert('Phone number is valid');
} else {
alert('Phone number is NOT valid');
}
}
<input type="text" id="phone" name="phone" />
<a id="phoneErr"></a>
<button type="button" onclick="checkPhone()">Check it</button>
如評論中所述 - 您需要驗證value文本框,而不是文本框本身。
uj5u.com熱心網友回復:
你甚至不需要 JS:
<form>
<input type="text" minlength="10" maxlength="10" required placeholder="Phone number (10 digits)" />
<button>Send</button>
</form>
uj5u.com熱心網友回復:
嘗試獲取值的長度。var phoneL = document.getElementById("phone").value.length;
uj5u.com熱心網友回復:
這會很簡單
HTML:
首先創建一個提交按鈕,這樣我們就可以檢測到用戶什么時候提交
<input type="text" id="phone" name="phone" placeholder='Enter Phone number..'/>
<button id='submit'>Submit</button>
JavaScript:
<script type="text/javascript">
document.getElementById('submit').onclick = function(){ // trigger when button is clicked
let phoneL = document.getElementById('phone').value.length; // get the length of the value
if (phoneL >= 10) { //check if the length is 10 characters or more
alert('Valid phone number!')
} else {
alert('Invalid phone number!')
}
}
</script>
如果您需要任何其他幫助,請隨時告訴我
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/455157.html
標籤:javascript
