我一直在研究ASP.Net应用程序。我有一个简单的网站,其中包含一些JavaScript函数。当我第一次运行该项目时,它将加载索引视图,并且一切正常。但是,当我从索引视图导航到另一个页面时,即使我在布局页面中添加了所有脚本链接和函数,JS函数也停止工作。
我也尝试过放置功能:
head
标签中,@Renderbody
之后
但是,这些都不起作用。这是我的代码
布局
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Layout</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
<link href="~/Scripts/StyleSheet1.css" rel="stylesheet" />
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script src="https://use.fontawesome.com/releases/v5.0.8/js/all.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<link href="https://fonts.googleapis.com/css?family=Roboto|Varela+Round|Raleway" rel="stylesheet">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<script src="~/Scripts/main.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
</head>
@RenderBody()
// Some Html code
<script>
$("#postIt").click(function () {
postIt();
});
function postIt() {
var usr = $("#username").val();
var pwd = $("#password").val();
$.ajax({
type: "POST",
url: "Home/Login",
data: {
"Username": usr,
"Password": pwd
},
success: function (data) {
if (data.result) {
JSalert(data.result);
reload();
//alert(data.message);
} else {
// unauthorized
alert(data.message);
}
}
});
}
function JSalert(result) {
swal("Congrats!", " Your account is logged in!", "success", 3000, true);
setTimeout("location.reload(true);",1700);
}
</script>
</body>
</html>
在其他页面的顶部
@{
Layout = "~/Views/Shared/Layout.cshtml";
}
我检查了其他页面上的页面源,js函数存在。
谢谢。
答案 0 :(得分:1)
似乎您在发布的代码中忘记了关闭头标签和打开主体标签。 修复时请再次检查