2014-10-08 1 views
0

Итак, я подумал, что я могу добавить новый элемент к сеансу пользователя, чтобы добавить некоторые функции.Почему я не могу добавить новую переменную в сеанс в классическом ASP?

Я честно думал, что я мог бы сделать это:

SomeFunction(param1, NEWparam) 
{ 
    Session("MyNewParam") = NEWparam; 
    //So this would create a new session element called 'MyNewParam', right..? 
    ... 
} 

Это вызывается, когда пользователь нажимает на кнопку, а затем другой веб-страница загружает.

В результате эта новая строка кода: Следующая страница не загружается. Ничего не произошло.

Любые комментарии приветствуются. Решения или полезные комментарии были бы замечательными.

+2

Не уверен в вашем синтаксисе, но если вы используете JScript с классическим ASP, не следует ли ссылаться на вашу коллекцию с помощью '[]' not '()' скобок? Таким образом, ваша строка будет 'Session [" MyNewParam "] = NEWparam;'. Вероятно, вы получаете «Синтаксическую ошибку», но не получили ошибки, настроенные для возврата с сервера в IIS (поэтому ваша веб-страница, похоже, ничего не делает). – Lankymart

+0

Является ли этот клиентский или серверный javascript? –

+0

@superwoman - вам нужно установить переменную сеанса в asp не javascript – allski

ответ

0

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

Session("MyNewParam") = parseInt(NEWparam); 

Очевидно, вы могли бы использовать String(), parseFloat() ... или что угодно. Как я уже сказал, синтаксис прав в противном случае, поэтому, если код не работает, вы можете захотеть взглянуть на другие части функции, которые могут вызвать проблему.

 Смежные вопросы

  • Нет связанных вопросов^_^