我遇到的问题是,如果用户将userdata
输入留空,我希望它定位该输入并显示文本,通知他们这是必填字段。
我正在使用innerHTML
将消息发送到div
或直接发送到输入字段,但不显示任何内容。我还尝试使用<p>
,<span>
,但这也无效。任何帮助表示赞赏。
<!doctype html>
<html>
<head>
</head>
<body>
<form>
<input type="text" id="user1">
<div id="error"></div>
<button onClick="test()">Work</button>
</form>
<script type="text/javascript">
function test(){
var userdata = document.getElementById("user1").value;
if(userdata == ""){
document.getElementById("error").innerHTML="Please fill in Blanks";
}
}
</script>
</body>
</html>
答案 0 :(得分:2)
只需以这种方式更改按钮行:
<button onClick="test();return false;">Work</button>
InnerHTML工作正常,但按钮的默认行为是发出'POST'请求,使页面刷新删除innerHtml更改。 return false语句禁用此默认行为,使您的代码按预期工作。
经过测试和运作。 希望它有所帮助。
答案 1 :(得分:2)
以下是JSBIN
<强> HTML 强>
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<form>
<input type="text" id="user1">
<div id="error"></div>
<button onClick="test();return false;">Work</button>
</form>
</body>
</html>
在 JavaScript 中添加其他条件
if(userdata === ""){
document.getElementById("error").innerHTML="Please fill in Blanks";
} else{
document.getElementById("error").innerHTML="";
}