这不是实际情况,但我必须结合map对象使用check函数。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="" method="post" onsubmit="return check()">
<input type="text" name="name" id="one" oninput="change(this)" />
<input type="text" name="password" id="two" oninput="change(this)" />
<input type="submit" name="submit" value="submit" />
</form>
<script type="text/javascript">
var map = new Map();
function change(obj){
var id = obj.id;
if(obj.value != ""){
map.set(id,obj.value);
console.log("added key "+obj.id+" value "+obj.value+" size "+map.size);
}else{
map.delete[id];
console.log("removed key "+obj.id+" value "+obj.value+" size "+map.size);
}
}
function check(){
if(map.size != 2){
alert("enter all values");
return false;
}
}
</script>
</body>
</html>
表格标签中的操作有意为空
使用上面的代码,当我在任何一个文本框中输入值时,该值将添加到地图中,但是当我再次清除它时,值对不会从地图中删除。删除它时,地图的大小不会减少(或者可能是对象未被删除)。因此,一旦我在输入内容后清除字段,地图的大小将保持为2并且提交在没有任何警报的情况下发生。帮我。逻辑,我必须在其他地方使用它来使其工作。提前谢谢。