這是一個簡單的代碼,我不知道我在哪裏出錯了。名稱驗證工作如果沒有輸入名稱,但它不顯示結果時有效名稱被輸入。Javascript驗證(點擊提交後輸入不顯示)
這裏是我的代碼:
我在HTML和JavaScript只是新的,希望我會從這裏得到幫助。謝謝
function checkname(form) {
var eobj = document.getElementById('MITname');
var jname = form.Name.value;
var error = false;
eobj.innerHTML = '';
if (jname == '') {
error = "Name is required!";
var error2 = error.fontcolor("red");
}
if (error) {
if (hasFocus == false) {
form.Name.focus();
hasFocus = true;
}
eobj.innerHTML = error2;
return false;
}
return true;
}
function showinput() {
document.getElementById('namedisplay').innerHTML = document.getElementById('MITname').value;
}
function validate() {
hasFocus = false;
var form = document.forms['form'];
var ary = [checkname];
var rtn = true;
var z0 = 0;
for (var z0 = 0; z0 < ary.length; z0++) {
if (!ary[z0](form)) {
rtn = false;
}
}
return rtn;
}
<form action="" name="form" onsubmit="return validate()">
<tr>
<td align="right">Name:<font color="red">*</font>
</td>
<td>
<input type="text" name="Name" /> <span id="MITname"> </span>
</td>
</tr>
<br/>
<input type="submit" value="Submit" onclick="showinput()" />
<br/>
<label>Your input:</label>
<p><span id="namedisplay"></span>
</p>
</form>
我假設驗證函數應該創建一個包含所有表單的數組,然後爲每個表單調用'checkname' ...而不是迭代1個變量數組來調用'checkname' – abc123
這是我在課堂上的第一天,這是自我教導..我我不知道我在編碼什麼,但我打算做一個JavaScript驗證..知道這個代碼是可怕的,這有點讓人失望.. *嘆*感謝壽,我很感激它。 –
@ Geni-sama,別太難過,我們都必須從某個地方開始。我建議的做法是在線觀看一些「Javascript intro」視頻,並看看W3學校,因爲它們對初學者有很大的幫助。 – FibreChips