如何将会话变量的值传递给$ .ajax()?

时间:2011-04-28 16:18:07

标签: jquery asp.net .net-4.0

我有一个包含一些字符串数据的会话变量。如何从标记(而不是后面的代码)访问会话变量并将其值传递给以下代码?我需要更换?????与会话变量的实际值。谢谢!

function btnAddTask_onclick() {
            var inputData = { task: $(".taskInput").val(), sessionVar: ????? };

            $.ajax({
                "url": "AddTask.aspx",
                "type": "get",
                "data": inputData, 
                "success": function (response) {
                    alert(response);
                    $("body").append(response);

                },
                "error": function (response) {
                    alert("Error: " + response);
                }
            })
        }

2 个答案:

答案 0 :(得分:3)

var inputData = { task: $(".taskInput").val(), sessionVar: '<%= Session["session_var"] %>' }

答案 1 :(得分:2)

@Carlos M的答案很好,假设会话所需的数据在点击按钮时是最新的。但是既然你正在使用Ajax,我会假设这不一定是真的,例如在客户端上的其他一些先前的ajaxified操作可能导致Session更改。

但是,我不禁想知道,将会话数据直接传递给ajax请求的目的是什么?为什么不直接从Session中的代码访问AddTask.aspx而不是让服务器在客户端上呈现内容,只是将其直接传递回服务器?在客户端上访问Session似乎没有任何意义,因为您所做的就是再次将其传递给服务器。它实际上并没有在客户端使用。