[英]Javascript Validating Numbers xhtml
我正在做一些JavaScript作業,它說明如下:
-驗證客戶ID是數字,而不是字符串。 同樣,所有客戶ID都是3000到3999之間的數字。所有4位數字。 驗證所有客戶ID是3000到3999之間的數字。
-驗證AcctNo是數字,而不是字符串。 該數字在90000和99999之間。
當我在編寫代碼時,帶有數字的部分總是給我錯誤,當我在網絡上尋求幫助時,它就提出了//
任何幫助都很好,謝謝(:
XHTML
<head>
<script type = 'text/javascript'>
// <![CDATA[
$('#submit').click(function(){
validateRange();
validateRa();
})
function validateRange() {
var txtVal = document.getElementById("CustomerID").value;
var txtVal1=parseInt(txtVal);
if (txtVal1 >= 3000 && txtVal1 <= 3999) {
return true;
}
else
alert('Please enter a number between 3000-3999');
return false;
}
// ]]
function validateRa() {
var txtVal1 = document.getElementById("AcctNo").value;
var txtVal2=parseInt(txtVal1);
if (txtVal2 >= 90000 && txtVal2 <= 99999) {
return true;
}
else
alert('Please enter a number between 90000-99999');
return false;
}
// ]]
</script>
<title>Account Lookup</title>
</head>
<body>
<h1> Please Provide Your Information</h1>
<p><input type="text" id="AcctNo" value="Account Number"/></p>
<p><input type="text" id="CustomerID" value="CustomerID" onchange="validateRange()"/></p>
<p><input type="text" name="Type" value="Account Type" onchange="validateRange()"/></p>
<p><input type="text" name="balance" value="Balance"/></p>
<p class="submit" />
<input type="submit" name="commit" value="Submit" id="submit" /><button type="reset" value="Clear">Clear</button></p>
</body>
</html>
在HTML中使用名稱插入ID
html
<h1> Please Provide Your Information</h1>
<p><input type="text" id="AcctNo" value="Account Number"/></p>
<p><input type="text" id="CustomerID" value="CustomerID" onchange="validateRange()"/></p>
<p><input type="text" name="Type" value="Account Type" onchange="validateRange()"/></p>
<p><input type="text" name="balance" value="Balance"/></p>
<p class="submit" />
<input type="submit" name="commit" value="Submit" id="submit" /><button type="reset" value="Clear">Clear</button></p>
js
$('#submit').click(function(){
validateRange();
validateRa();
})
function validateRange() {
var txtVal = document.getElementById("CustomerID").value;
var txtVal1=parseInt(txtVal);
if (txtVal1 >= 3000 && txtVal1 <= 3999) {
return true;
}
else
alert('Please enter a number between 3000-3999');
return false;
}
// ]]
function validateRa() {
var txtVal1 = document.getElementById("AcctNo").value;
var txtVal2=parseInt(txtVal1);
if (txtVal2 >= 90000 && txtVal2 <= 99999) {
return true;
}
else
alert('Please enter a number between 90000-99999');
return false;
}
嘗試這個:
var txtVal = parseInt(document.getElementById("CustomerID").value) || 0;
和
var txtVal1 = parseInt(document.getElementById("AcctNo").value) || 0;
也:
else {//<-- braces,since it has multiple lines
alert('Please enter a number between 3000-3999');
return false;
}
您的else條件有問題
您還需要在else塊中包含大括號,因此您必須
else
{
alert('Please enter a number between 3000-3999');
return false;
}
和
else
{
alert('Please enter a number between 90000-99999');
return false;
}
也
var newtxtval = parseInt(txtval);
在兩個函數中添加以上行,它將起作用
文本框的name
為CustomerID
而AcctNo
不是文本框的id
。 因此,當您的驗證函數使用document.getElementById
方法訪問它們時,將始終提供空引用,因此,每當您更改CustomerID
文本框的內容時,它將給出Java腳本錯誤。
在您的代碼中根本沒有調用函數validateRa()
,該代碼用於驗證帳號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.