Javascript 如何将控制器中声明的会话值传递给jquery变量?
我在controller中创建了一个函数,在该函数中我创建了三个会话并传递了值。我需要将这些值传递给jquery文件中的一些变量,以便在函数中使用它。 这是控制器的功能Javascript 如何将控制器中声明的会话值传递给jquery变量?,javascript,jquery,asp.net-mvc-3,session,Javascript,Jquery,Asp.net Mvc 3,Session,我在controller中创建了一个函数,在该函数中我创建了三个会话并传递了值。我需要将这些值传递给jquery文件中的一些变量,以便在函数中使用它。 这是控制器的功能 public string GetAssociatedCompSetsForGroup(string groupID, string ScreenName) { Session["WorkBookID"] = Session["workbookId"]; Session["groupID"
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;
}
公共字符串GetAssociatedCompSetsForGroup(字符串组ID,字符串屏幕名)
{
会话[“WorkBookID”]=会话[“WorkBookID”];
会话[“groupID”]=groupID;
会话[“屏幕名称”]=屏幕名称;
IList compSetsIds=serviceKMALocator.InvokeService(x=>x.GetAssociatedCompSetsForGroup(Convert.ToInt32(groupID),屏幕名));
string id=string.Empty;
foreach(compSetsIds中的int-id)
{
ids=ids+id.ToString()+常量.分号;
}
如果(!string.IsNullOrEmpty(ids))
{
ids=ids.Substring(0,ids.Length-1);
}
ViewBag.CompSetIds=ids;
会话[Constant.CompSetIds]=CompSetIds;
返回ID;
}
我在控制器中创建的三个会话的值应该传递给下面代码中的变量,我尝试过类似的方法
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) { .....
var-GroupID='';
var WorkBookID='';
变量ScreenName='';
if(GroupID!=null&&WorkBookID!=null&&ScreenName!=null)
{
$.post(compsetForGroup,{groupID:groupID,ScreenName:ScreenName},函数(jsonData){
if(jsonData){
函数ajaxCall(否){。。。。。
请帮我填写正确的格式。提前谢谢。试试这个:
var GroupID = '<%=Session["groupID"]%>';
var WorkBookID = '<%=Session["WorkBookID"]%>';
var ScreenName = '<%=Session["ScreenName"]>';
if (GroupID && WorkBookID && ScreenName)
{
var-GroupID='';
var WorkBookID='';
变量ScreenName='';
if(GroupID&&WorkBookID&&ScreenName)
{
在JavaScript代码中:
var WorkBookID = "@Session[0]";
var groupID= "@Session[1]";
var ScreenName = "@Session[2]";
会话0到2分别与WorkBookID、groupID和ScreenName会话的值相等。我就是这样做的
var OppoId = '@(OMSSession.SessionProperties.SelectedOpportunityId)';
我认为
null
在JavaScript中没有任何意义,它是一个C的东西,如果会话变量是null
您的JavaScript变量将只是一个空字符串('
)。将!=null
替换为!='
。顺便说一句,在上一个变量中,您也缺少了一个%
。ASP是否在将JS文件发送到浏览器之前处理和解析其输出?如果没有,则需要使用AJAX从会话中请求必要的变量。否,值本身不会传递到变量可能我可以找到格式“”;错误,但我不知道正确的格式是什么请帮助我我需要将控制器中会话[session[“groupID”]=groupID;]的值传递给变量[var groupID]在jquery中。我在jquery和mvc方面非常差。请建议我做这件事的步骤。谢谢。好吧,
似乎是打印ASP变量的正确语法,但是如果ASP没有解析这个JS文件,那么如果你在浏览器中查看源代码,你应该会看到var GroupID='';
。我会在文章中概述基金AJAX的基本概念。