0

我正在尝试在 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"
     });
});
4

5 回答 5

1

jquery在asp.net中设置会话

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

于 2013-04-01T09:50:38.150 回答
1

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

您可以做什么,您可以generic http handler
从 jquery 创建一个 Call it
在该处理程序中设置会话值。

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

这是一些链接
在 jquery.click()
http://brijbhushan.net/2011/05/29/call-httphandler-from-jquery-pass-data-and-retrieve-in-json-中设置 ASP.NET 会话格式/

于 2013-04-01T10:02:59.857 回答
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
于 2013-04-01T09:51:47.657 回答
0

无法设置会话客户端,因为 <%%> 将在页面加载时执行,并将与 HTML 的其余部分一起呈现。但是,您可以使用它来读取值并基于它执行一些操作。您可能想尝试@Adil 所说的。

我希望它让一切都非常清楚。

于 2013-04-01T10:00:36.770 回答
0

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

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

于 2015-01-27T19:20:40.707 回答