Как захватить возвращаемое значение функции javascript внутри vb.net ?

#vb.net

#vb.net

Вопрос:

Я создал функцию с именем test, которая возвращает логическое значение в отдельном js-файле, и я мог бы вызвать эту функцию внутри и aspx.vb-файла в vb.net как таковой:

Скриптменеджер.RegisterStartupScript(я, Стр.GetType, «Script», «test();», True)

мой вопрос в том, как захватить это возвращаемое значение и присвоить его переменной в vb.net значит, я могу использовать его в условном операторе vb?

Комментарии:

1. Какое событие в браузере должно отправить значение в VB.NET ?

Ответ №1:

На самом деле вы не вызываете функцию. Что делает RegisterStartupScript, так это то, что он «сообщает» браузеру, что он должен запустить функцию test(), как только будет готов к этому.

С учетом сказанного, вы не можете получить возвращаемое значение из функции test(), потому что, когда она вызывается, ваш код aspx vb уже выполнен. Посмотрите здесь для получения дополнительной информации о жизненном цикле страницы aspx.

Обычно не рекомендуется писать код на стороне сервера (aspx), который зависит от результата кода на стороне клиента (js), однако то, что вы можете сделать, это использовать js-функцию test() для выполнения ajax-запроса на странице aspx и «продолжения» оттуда. Вот небольшой пример. Дело в том, что этот подход не подходит и не рекомендуется для того, что, я подозреваю, вы пытаетесь сделать. Для представления различных частей веб-страницы пользователю в соответствии с выводом функции test() js.

Я не могу предоставить пример кода для того, что я предлагаю, потому что это будет неправильный вариант использования. Я отвечаю на это только для того, чтобы подчеркнуть, что вы на самом деле не можете делать то, что просите, и даже если есть способ сделать это, вам определенно следует избегать этого. Тем не менее, это хорошая возможность глубже погрузиться в разработку и реализацию веб-приложений.

Возможно, СПА-центр может соответствовать вашим потребностям?