将变量传递到服务器端然后返回到客户端而无需回发或重新加载
Passing variable to server-side then back to client side without postback or reload
有没有办法将值从客户端传递到服务器端,服务器端处理这个值,然后return它到客户端而不需要重新加载或回发?
我正在使用 ajax 将值传递到服务器端。这是我的客户端代码:
var baseUrl = '<%= ResolveUrl("~/") %>';
$.ajax({
type: "POST",
url: baseUrl + "Pages/TeamTimeTest/teamtime.aspx/setjson",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
strpath: $("#hdnfld").val()
}),
success: function (data) {
alert(data);
},
error: function (response) {
console.log(response);
}
});
这是我的隐藏代码:
[WebMethod(EnableSession = true)]
public static string setjson(string strpath)
{
HttpContext.Current.Session["strDwnPath"] = strpath;
var val = HttpContext.Current.Session["strDwnPath"].ToString();
return val;
}
它return对我来说是未定义的。但是当我重新加载时,它给了我正确的值。有没有可能即使不重新加载我也能拥有那个价值?
HttpContext.Current.Session["strDwnPath"] = strpath;
var val = HttpContext.Current.Session["strDwnPath"].ToString();
return val;
我应该这样做。
var val = strpath;
return val;
我在这里只需要获取返回值,它无需重新加载即可完成。
有没有办法将值从客户端传递到服务器端,服务器端处理这个值,然后return它到客户端而不需要重新加载或回发?
我正在使用 ajax 将值传递到服务器端。这是我的客户端代码:
var baseUrl = '<%= ResolveUrl("~/") %>';
$.ajax({
type: "POST",
url: baseUrl + "Pages/TeamTimeTest/teamtime.aspx/setjson",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({
strpath: $("#hdnfld").val()
}),
success: function (data) {
alert(data);
},
error: function (response) {
console.log(response);
}
});
这是我的隐藏代码:
[WebMethod(EnableSession = true)]
public static string setjson(string strpath)
{
HttpContext.Current.Session["strDwnPath"] = strpath;
var val = HttpContext.Current.Session["strDwnPath"].ToString();
return val;
}
它return对我来说是未定义的。但是当我重新加载时,它给了我正确的值。有没有可能即使不重新加载我也能拥有那个价值?
HttpContext.Current.Session["strDwnPath"] = strpath; var val = HttpContext.Current.Session["strDwnPath"].ToString(); return val;
我应该这样做。
var val = strpath; return val;
我在这里只需要获取返回值,它无需重新加载即可完成。