开发者

value not passing

开发者 https://www.devze.com 2023-03-18 20:54 出处:网络
I\'m trying to send selected checkbox values to another asp page to update database. $(\"#Delete_selected_Comment_button\").click(function () {

I'm trying to send selected checkbox values to another asp page to update database.

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

    $.ajax({
        url: 'htt开发者_JAVA百科p://myurl.aspx',
        type: 'GET',
        data: dataToBeDeleted,
        success: function () { alert('yipee'); },
        error: function () { alert("Ooff could not delete data"); }
    });
});

Problem:

I am not able to retrieve any value in myurl.asp page.

I am doing:

String datagotfromajax= request.QueryString[dataToBeDeleted];

Am doing this incorrectly? Where is my mistake ? Can anyone help please?


An easy way would be to change one line:

data: "ids="+dataToBeDeleted.join(","),

And, in the server do:

string[] ids = Request.QueryString["ids"].ToString().Split(",");

With this you'll hava a string array in the server with the corresponding checkboxes values.

HOpe this helps.


dataToBeDeleted will be converted to a query string (if its not already) when sent to the server, that means it consists key-value pairs, i.e. foo=bar&fred=fish. On the server you can query individual key-value pairs using the syntax

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


You are passing an array as the data parameter. This won't work. You need to pass an object. If the object contains an array, this will be serialized appropriately. This means your code should probably look like this:

data: {
    toBeDeleted: dataToBeDeleted
},

This will then be serialized appropriately (see $.param for the serialization process) and you can retrieve the values with your back-end code.

0

精彩评论

暂无评论...
验证码 换一张
取 消