Я работал над приложением 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 существуют.
Спасибо.