asp.net中的jquery设置会话

时间:2013-04-01 09:49:08

标签: jquery asp.net session

我正在尝试在jquery中设置会话。这是代码,但无法弄明白。请查看评论下方的行。我该怎么办?

$(document).ready(function () {
    $("#demo-input-facebook-theme").tokenInput("http://xxx.com/MedService.aspx", {
        onAdd: function (item) {
            // *************************************
            // I want to add item.name to below code
            // *************************************
            <% HttpContext.Current.Session["Session_Post_Kategori"] += "item.name"; %>
        },
        onDelete: function (item) { },
        theme: "facebook"
     });
});

5 个答案:

答案 0 :(得分:1)

  

asp.net中的jquery设置会话

使用jQuery / javascript无法在客户端设置会话。会话在服务器端维护,并且必须在服务器端而不是在jQuery中设置,尽管您可以在jQuery中使用sessoin值。您可以向服务器发送 ajax呼叫,以便从javascript设置会话。

答案 1 :(得分:0)

会话存储在服务器端...并且Javascript / Jquery是客户端脚本..因此您无法从Javascript访问会话...但是,您可以使用ajax将值发布到服务器和存储那里..

例如..

 onAdd: function (item) {
     $.post(yoururl,{data:item.name});//<--- this will post the data to your url (controller) and you can set the session there

答案 2 :(得分:0)

无法将会话客户端设置为&lt; %%&gt;将在页面加载时执行,并将与HTML的其余部分一起呈现。但是,您可以使用它来读取值并根据它执行某些操作。你可能想试试@Adil说的话。

我希望它能让一切都清楚。

答案 3 :(得分:0)

你不能像你正在尝试那样设置。

您可以做些什么来创建generic http handler
从jquery打电话给 在该处理程序中设置会话值。

public class AddSalesLead : IHttpHandler, IRequiresSessionState
{
    public void ProcessRequest(HttpContext context)
    {
        context.Response.Session= context.Request["yourvalue"];
    }
    public bool IsReusable
    {
        get{return false;}
    }
}

从jquery

调用它
$(document).ready(function () {
    $("#demo-input-facebook-theme").tokenInput("http://xxx.com/MedService.aspx", {
        onAdd: function (item) {
          //call the handler here to set session value
          $.ajax({
               type: "POST",
               url: "yourhandler.ashx?yourvalue="+"value",
               success: function (data) {
               },
               error: function () {
               },
                async: true
           });
        },
        onDelete: function (item) { },
        theme: "facebook"
     });
});

编辑1

以下是一些链接
Setting a ASP.NET Session in jquery.click()
http://brijbhushan.net/2011/05/29/call-httphandler-from-jquery-pass-data-and-retrieve-in-json-format/

答案 4 :(得分:0)

我找到了这个网页,对解决这个问题非常有帮助。它非常完美,非常干净。 它可以帮助避免传递会话或cookie。

http://codewala.net/2011/05/29/call-httphandler-from-jquery-pass-data-and-retrieve-in-json-format/