ASP. NET ядро ​​| Как использовать одну и ту же переменную в HTML файле и Javascript файле? - PullRequest
0 голосов
/ 29 апреля 2020

Итак, я работаю над своим первым веб-приложением в visual studio и у меня возникла проблема. В моем файле HTML я хочу объявить переменную, которую я могу использовать в моем файле javascript, но я не знаю как. Я знаю основы html, но я не знаю много javascript (но мне нужно его использовать). Есть ли способ объявить переменную в моем скрипте html и использовать ту же переменную с тем же заданным значением в другом javascript файле enter image description here

Итак, переменная необходимо использовать в API. js и registreerPagina.cs HTML

Заранее спасибо за помощь !!

Ответы [ 3 ]

0 голосов
/ 29 апреля 2020

Независимо от структуры на стороне сервера, конечная клиентская сторона - это, в конечном счете, всего одна «страница» в браузере, и любая JavaScript на этой странице или ссылка на нее выполняется браузером. Таким образом, на этой странице вы можете сделать что-то вроде этого:

<script type="text/javascript">
    var x = 'some value';
</script>
<script type="text/javascript" src="someFile.js"></script>

Если в someFile.js есть код, который ссылается на переменную уровня окна с именем x, тогда эта переменная будет иметь значение 'some value'. Все загруженные JavaScript на странице или в ссылках в отдельном файле будут выполняться в том порядке, в котором они загружены, и все в том же контексте окна.

В таких структурах, как ASP. NET это может быть полезно, когда значение является динамическим c в представлении и должно использоваться в JavaScript, что похоже на ситуацию, с которой вы столкнулись. Предположим, вы спроектировали свой файл JavaScript так, чтобы он загружался и затем вызывался с некоторыми введенными значениями. Вы можете получить что-то вроде этого:

<script type="text/javascript" src="someFile.js"></script>

<!-- lots of page content, then at the bottom... -->

<script type="text/javascript">
    var x = '@someServerSideValue';
    invokeJS(x);
</script>

В этом случае может быть много кода внутри someFile.js, но он все только определен и еще не выполнен. Его выполнение обернуто в функцию, которая вызывается, когда страница завершает загрузку. (В этом случае эта функция называется invokeJS.) Эта функция ожидает, что параметр (или несколько параметров) предоставит ему значения, необходимые для этого кода, во многом как внедрение зависимостей.

0 голосов
/ 29 апреля 2020

Итак, есть несколько способов, которыми вы можете подойти к этому. Первый способ заключается в создании контроллера API в вашем приложении и вызове конечной точки для возврата вашего значения / значений:

// Assuming you have referenced jQuery
$(function() {
    $.getJSON("/api/schweetvariable", function(data) {
        localVar = data;
    });
 });

Другим способом будет создание файла JS на стороне сервера через httphandler или подобное. Честно говоря, я бы go сказал, что API-маршрут довольно простой и простой в реализации и обслуживании.

Есть несколько других способов достижения этого: SignalR с постоянным соединением или встроенный API.js. logi c если это вариант.

0 голосов
/ 29 апреля 2020

Самый простой способ - просто вставить тег в HTML. Это просто добавит javascript на вашу страницу.

<script>var msg = "Hello world";</script>

Но поскольку Javascript - это скрипт, вы должны быть уверены, что ваш тег отображается, прежде чем ваш файл javascript попытается его использовать. , Это немного более сложная тема, но это основная идея, если вы просто хотите объявить переменную.

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