这是我的代码,如果文本框留空则应该引发alert
消息:
function a(id)
{
var n=document.getElementById(id).value;
if (n.length < 1)
{
window.alert("Field is blank");
return false;
}
}
我得到的错误是该字段第一次没有得到验证onChange
。但是当文本框中填充了一些数据并被删除时,现在会OnChange
触发,并显示alert
消息。我该如何修复这个错误?
答案 0 :(得分:24)
onchange
才会起作用,所以第一次它不起作用,因为状态没有改变。
因此,最好使用onblur
事件或提交表单。
function checkTextField(field) {
document.getElementById("error").innerText =
(field.value === "") ? "Field is empty." : "Field is filled.";
}
<input type="text" onblur="checkTextField(this);" />
<p id="error"></p>
答案 1 :(得分:3)
您的验证应该在您的活动假设您要提交表单之前进行。
无论如何你想在onchange上这样做,所以这里是代码。
function valid(id)
{
var textVal=document.getElementById(id).value;
if (!textVal.match(/\S/))
{
alert("Field is blank");
return false;
}
else
{
return true;
}
}
答案 2 :(得分:0)
function valid(id)
{
var textVal=document.getElementById(id).value;
if (!textVal.match("Tryit")
{
alert("Field says Tryit");
return false;
}
else
{
return true;
}
}
使用它来表达事物