我正在尝试在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"
});
});
答案 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"
});
});
以下是一些链接
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/