Почему мои функции JavaScript работают только в представлении индекса? - PullRequest
0 голосов
/ 13 февраля 2019

Я работал над приложением ASP.Net.У меня есть простой веб-сайт с некоторыми функциями JavaScript.Когда я впервые запускаю проект, он загружает представление индекса, и все работает просто отлично.Однако, когда я перехожу на другую страницу из моего индексного представления, функции JS перестают работать, даже несмотря на то, что я добавил все ссылки на скрипты и функции на странице макета.

То, что я тоже пытался, это поместить функции:

  1. в теге head,
  2. перед закрывающим тегом тела
  3. непосредственно после @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 существуют.

Спасибо.

1 Ответ

0 голосов
/ 13 февраля 2019

Кажется, вы забыли тег закрывающей головы, а также тег открывающего тела в опубликованном вами коде.Пожалуйста, проверьте еще раз, когда вы исправите это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...