好的,我有幾個查詢窗體。我開始爲它寫我的驗證代碼,但我的錯誤不會顯示。它發現錯誤,因爲它將div的狀態從隱藏狀態改變爲可見狀態,但不會顯示錯誤類型。窗體驗證,div標記中的錯誤不會顯示
這裏是我的valform.js
reason = "";
function validateForm(form)
{
reason += validateAge(form.age);
if (reason != "")
{
document.getElementById('erbox').style.visibility = 'visible';
return false;
}
return true;
}
function validateAge(fld)
{
function isNumber (o)
{
return ! isNaN (o-0);
}
var error ="";
var x=fld.value;
if (x==null || x=="")
{
error="Age must be filled";
}
else if (isNumber(x)==false)
{
error="Your age is not numeric value!";
}
else if (x<18)
{
error = "You need to be 18 or older!";
}
return error;
}
這裏是我的HTML表單:
<div id="upform">
<form name="lastcheck" action="lastcheck.php" method="post" onsubmit="return
validateForm(this);">
Location: <input type="text" name="locationcity">
Country: <input type="text" name="country">
Gender: <input type="radio" name="group1" value="w"> Woman<br>
<input type="radio" name="group1" value="m"> Man<br>
Age: <input type="number" name="age" size="4" maxlength="2">
<input type="submit" value="Submit">
<div style="visibility:hidden" id="erbox">Next error(s) occured:
<script type="text/javascript"> document.write.lastcheck('reason');
</script>
</div>
</form>
</div>
我包括像這樣的頭js文件:
<script src="js/valform.js"></script>
所以現在當它在AGE字段發生錯誤時,我的隱藏錯誤表單變爲可見,但沒有關於錯誤的信息。
我還有一個問題,仍然在學習的javascript:
所以想添加單選按鈕,驗證和它打破了我的整個驗證:
function vGender(fld) {
var x = fld.value;
var i = 0;
while (i < x.length) {
if (x[i].checked) formValid = true;
i++;
}
if (!formValid) error = "blabla";
return error;
}
,我添加了另一個原因,在頂部是這樣的:
reason += vGender(form.radios);
在哪裏,增加了錯誤信息的錯誤'DIV'的代碼? –
需要一些額外的幫助,提前謝謝 – user1825130