Jquery发布和丢失数据

时间:2017-06-22 22:37:35

标签: javascript jquery asp.net ajax

我正在检索网站,群组和用户的列表。我将它们连接并放在各自的变量中,将它们以查询字符串形式发送到aspx文件。

var url = (Page._BASE_URL + 'Mo/Un/Unis/Unifie.aspx?' + getUserSecurityParameter() +
    '&action=sending&userIds=' + encodeURI(userIds) +
    '&siteName=' + encodeURI(site) +
    '&groupName=' + encodeURI(groupName) +
    '&siteList=' + encodeURI(siteList) +
    '&team=' + encodeURI(team) +
    '&users=' + encodeURI(users)+
    '&site=' + encodeURI(site));

我正在使用此代码从ajax帖子中检索这些值。我注意到当我注意到检查aspx源时,组和站点之间有如此多的数据,用户变量和数据从不存在。

var siteName = $.getUrlVar('siteName');
var groupName = $.getUrlVar('groupName');
var users= $.getUrlVar('users');

有更好的方法可以做到这一点,所以我不会遇到这个问题吗?由于缺少用户数据,因此会抛出写在后端的查询。提前致谢。

这就是我现在所拥有的。当我尝试发送数据时,我得到一个错误。不幸的是,我无法看到错误。

    var requestParameters =
    {
        siteList: siteList,
        team: team,
        users: users,
        siteName: site,
        site: site,
        group: group,
        userId: userId,
        securityCode: getUserSecurityParameter()
    };

$.ajax({
    url: Im._B + 'Mo/Uni/Unif/Ui.aspx/getValues',
    type: "POST",
    data: JSON.stringify(requestParameters),
    contentType: "application/json; charset=UTF-8",
    done: function (requestParameters, textStatus, jqXHR) {
        var left = Math.floor((screen.width - 545) / 2);

        windowManager.openFixed(url, 'DocumentListWindow', left, /* top: */ 10, /* width: */ 1480, /* height: */ 840);
},
    error: function (jqXHR, textStatus, errorThrown) {
    alert('An error occurred trying to send the data.');
}
});

Ui.aspx.cs

[System.Web.Services.WebMethod]
public static string getValues(string requestParameters)
{

    string mystuff = requestParameters;
    return mystuff;
}

ERROR " {\"消息\":\"由于对象的当前状态,操作无效。\",\" StackTrace \&# 34;:\"

1 个答案:

答案 0 :(得分:0)

虽然技术上对查询字符串的长度没有限制,但各个浏览器do have limits。按照Alex的建议将其转换为帖子。