我在使以下代码段正常工作时遇到问题。这是嵌入在较大的应用程序中的,但问题是运行了以下代码(我已经检查过),并且可以防止URL更改,但是即使我不确定,也会显示新路径的视图。因此,即使URL保持不变,我也不能停留在同一页面上。我是否缺少执行此操作所需的一段代码?
$scope.$on("$locationChangeStart", function(event) {
if (!confirm("You have unsaved changes. Are you sure you want to leave this page without saving?")) {
event.preventDefault();
}
});
答案 0 :(得分:0)
您必须在<html>
<head>
<script type="text/javascript">
function test() {
if(document.getElementById("nombre").value.length() < 2){
alert("Error");
return 1;
}
else if(!document.getElementById("edad").value.isInteger()){
alert("Error");
return 1;
}
else if(!document.getElementById("email").value.includes("@")){
alert("Error");
return 1;
}
else{
document.getElementById("formulario").submit();
}
}
</script>
</head>
<body>
<form id="formulario"action = "https://postman-echo.com/get"
method = GET type=text>
Nombre: <input id="nombre" type="text"/>
<br><br>
Edad: <input id="edad" type="text"/>
<br><br>
E-mail: <input id="email" type="text"/>
</form>
<button onclick= "test()">Enviar formulario</button>
</body>
</html>
上致电event.preventDefault();
:停止导航,当用户$locationChangeStart
时,然后重定向。
confirm
中查看更多内容