将变量传递到服务器端,然后返回到客户端,而不进行回发或重新加载

本文关键字:新加载 加载 服务器端 变量 然后 返回 客户端 | 更新日期: 2023-09-27 18:22:06

有没有一种方法可以将值从客户端传递到服务器端,服务器端处理此值,然后将其返回到客户端而不重新加载或回发?

我使用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;
}

它为我返回undefined。但当我重新加载时,它会给我正确的值。即使不重新加载,我也有可能拥有这个值吗?

将变量传递到服务器端,然后返回到客户端,而不进行回发或重新加载

HttpContext.Current.Session["strDwnPath"] = strpath;
var val = HttpContext.Current.Session["strDwnPath"].ToString();
return val;

我本应该这么做的。

var val = strpath;
return val;

这里我只需要得到返回的值,它没有重新加载。