Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 未传递的值_C#_Asp.net_Jquery - Fatal编程技术网

C# 未传递的值

C# 未传递的值,c#,asp.net,jquery,C#,Asp.net,Jquery,我正在尝试将选中的复选框值发送到另一个asp页面以更新数据库 $("#Delete_selected_Comment_button").click(function () { var dataToBeDeleted = new Array(); $('.checkboxes_to_delete:checked').each(function (key, value) { dataToBeDeleted .push($(this).val()); });

我正在尝试将选中的复选框值发送到另一个asp页面以更新数据库

$("#Delete_selected_Comment_button").click(function () {
    var dataToBeDeleted = new Array();
    $('.checkboxes_to_delete:checked').each(function (key, value) {
        dataToBeDeleted .push($(this).val());
    });

    $.ajax({
        url: 'http://myurl.aspx',
        type: 'GET',
        data: dataToBeDeleted,
        success: function () { alert('yipee'); },
        error: function () { alert("Ooff could not delete data"); }
    });
});
问题:

我无法在myurl.asp页面中检索任何值。
我正在做:

String datagotfromajax= request.QueryString[dataToBeDeleted];

我做得不对吗?我的错在哪里?有人能帮忙吗?

dataToBeDeleted
将在发送到服务器时转换为查询字符串(如果尚未转换),这意味着它由键值对组成,即
foo=bar&fred=fish
。在服务器上,您可以使用以下语法查询单个键值对

string bar = request.QueryString["foo"];

您正在传递一个数组作为
数据
参数。这行不通。您需要传递一个对象。如果对象包含数组,则会对其进行相应的序列化。这意味着您的代码可能如下所示:

data: {
    toBeDeleted: dataToBeDeleted
},

然后将对其进行适当的序列化(有关序列化过程,请参阅),您可以使用后端代码检索值。

一个简单的方法是更改一行:

data: "ids="+dataToBeDeleted.join(","),
并且,在服务器中执行以下操作:

string[] ids = Request.QueryString["ids"].ToString().Split(",");
这样,您将在服务器中拥有一个带有相应复选框值的字符串数组

希望这能有所帮助。

ToString()没有任何意义,因为它已经是一个字符串,并且您有语法错误,在
c35;
中,它需要方括号。我会使用
(Request.QueryString[“ids”]+).Split(',')以避免未传递值时出现异常。