2014-01-20 4 views
0

Я создал функцию в контроллере, в которой я создал три сеанса и передал значения. Мне нужно передать значения некоторым переменным в файле jquery, чтобы использовать его в функции. Вот функция контроллераКак передать значение сеанса, объявленное в переменной контроллера переменной jquery?

public string GetAssociatedCompSetsForGroup(string groupID, string ScreenName) 
    { 
     Session["WorkBookID"] = Session["workbookId"]; 
     Session["groupID"] = groupID; 
     Session["ScreenName"] = ScreenName; 
     IList<int> compSetsIds = serviceKMALocator.InvokeService<IList<int>>(x => x.GetAssociatedCompSetsForGroup(Convert.ToInt32(groupID), ScreenName)); 
     string ids = string.Empty; 
     foreach (int id in compSetsIds) 
     { 
      ids = ids + id.ToString() + Constant.SemiColon; 
     } 
     if (!string.IsNullOrEmpty(ids)) 
     { 
      ids = ids.Substring(0, ids.Length - 1); 
     } 
     ViewBag.CompSetIds = ids; 
     Session[Constant.CompSetIds] = compSetsIds; 
     return ids; 
    } 

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

var GroupID = '<%=Session("groupID")%>'; 
var WorkBookID = '<%=Session("WorkBookID")%>'; 
var ScreenName = '<%=Session("ScreenName")>'; 


if (GroupID != null && WorkBookID != null && ScreenName != null) 
{ 


    $.post(compsetForGroup, { groupID: GroupID, ScreenName: ScreenName }, function (jsonData) { 
     if (jsonData) { 
      function ajaxCall(no) { ..... 

Пожалуйста, помогите мне с правильным форматом. Заранее спасибо.

+0

Я не думаю, что 'null' имеет никакого значения в JavaScript, это C# вещь, и если переменная сеанса' null' переменную JavaScript просто быть пустой строкой ('' ''). Замените '! = Null' на'! = '' '. BTW в вашей последней переменной вы также не видите '%'. –

+0

Работает ли ASP и анализируется вывод JS-файла до его отправки в браузер? Если нет, вам нужно будет использовать AJAX для запроса необходимых переменных из вашего сеанса. – MonkeyZeus

+0

Нет значения, которое не передается переменным, я мог бы найти формат «<% = Сессия (« groupID »)%> '; неправильно, но я не знаю, что является правильным форматом, пожалуйста, помогите мне – user3139423

ответ

0

Попробуйте это:

var GroupID = '<%=Session["groupID"]%>'; 
var WorkBookID = '<%=Session["WorkBookID"]%>'; 
var ScreenName = '<%=Session["ScreenName"]>'; 


if (GroupID && WorkBookID && ScreenName) 
{ 
1

в ваших кодов JavaScript:

var WorkBookID = "@Session[0]"; 
var groupID= "@Session[1]"; 
var ScreenName = "@Session[2]"; 

, что сессии 0 до 2 является эквивалентность стоимости WorkBookID, GroupID, ScreenName сессиях.

0

Это, как я сделал это

var OppoId = '@(OMSSession.SessionProperties.SelectedOpportunityId)'; 
Смежные вопросы