Javascript innerHTML未正确显示
我遇到的问题是,如果用户将Javascript innerHTML未正确显示,javascript,Javascript,我遇到的问题是,如果用户将userdata输入留空,我希望它以该输入为目标并显示文本,通知他们这是必填字段 我正在使用innerHTML将消息发送到div或直接发送到输入字段,但没有显示任何内容。我也尝试过使用,,但也不起作用。感谢您的帮助 <!doctype html> <html> <head> </head> <body> <form> <input type="text" id=
userdata
输入留空,我希望它以该输入为目标并显示文本,通知他们这是必填字段
我正在使用innerHTML
将消息发送到div
或直接发送到输入字段,但没有显示任何内容。我也尝试过使用
,
,但也不起作用。感谢您的帮助
<!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>
工作
功能测试(){
var userdata=document.getElementById(“user1”).value;
如果(userdata==“”){
document.getElementById(“error”).innerHTML=“请填空”;
}
}
只需按以下方式更改按钮行:
<button onClick="test();return false;">Work</button>
工作
InnerHTML工作正常,但按钮的默认行为是发出“POST”请求,使页面刷新并删除InnerHTML更改。returnfalse语句禁用此默认行为,使您的代码按预期工作
它已经过测试,正在运行。
希望有帮助。这是
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>
“我也尝试过使用\n\n,但没有任何效果”,什么是
\n\n
?@LightStyle\n
在javascript中是一个新行字符。@starbeamrainbowlabs ROTFL我知道,OP忘记使用代码引号``作为他自己标记的分隔符,所以它们没有出现,请查看编辑以了解我所说的;)最好在javascript函数中添加else条件,因为在输入空值并单击“工作”后工作正常,但在输入值并再次单击“工作”后,内部HTML显示请填写空白。。。这是错误的。所以最好添加其他条件。查看我的答案:)谢谢@fmodos。请记住,我还远远不是web开发方面的专家,所以可能存在一种更好、更优雅的方法来实现它。但是,“嘿,它行得通!”谢谢你,乔纳森!!很好。同样感谢您对返回false的解释。最好在javascript函数中添加else条件,因为在输入空值并单击“工作”后效果良好,但在输入值并再次单击“工作”后,内部HTML显示请填写空格。。。这是错误的。所以最好添加else条件。您可以使用一个简单的三元运算符来实现它,需要大量代码saved@Hugo观察上面发布的JSBINchange if(userdata==“”)到if(userdata==“”)place==此处为===或也称为“严格比较”表示类型相同且相等,==表示相等。更多关于这个的信息
if(userdata === ""){
document.getElementById("error").innerHTML="Please fill in Blanks";
} else{
document.getElementById("error").innerHTML="";
}