0

我有来自选定行的动态创建表的值。在每个选定的行中,我希望将所有属于的 td.innerText 值发送到 C# 页面,但我不知道如何发送。我使用的是 JSON,但我不知道我是否正确使用它。

function selectedRows() 
{

var selectedItems = $('#ScannedLabelTable').find(':checkbox:checked').parents('tr');

 var serial, kanbanNumber, customer, description, quantity;

    $.each(selectedItems, function (i, item) {


        var td = $(this).children('td');

        for (var i = 0; i < td.length; ++i)
        {

            serial = td[1].innerText;
            kanbanNumber = td[2].innerText;
            customer = td[3].innerText;
            description = td[4].innerText;
            quantity = td[5].innerText;

        }

        console.log(serial + ' ' + kanbanNumber + ' ' + customer + ' ' + description + ' ' + quantity);



    });

   $.ajax({
                    url: SEND_TO_TEXTFILE_PAGE
                    , data: "labelSerial=" + serial + "&kanbanNumber=" + kanbanNumber + "&customer="
                            + customer + "&description=" + description + "&quantity=" + quantity 
                    , dataType: 'json'
                    , success: function (status) {
                                                    if (status.Error) {
                                                        alert(status.Error);
                                                    }
                                                }
                    , error: Hesto.Ajax.ErrorHandler
                });


 }
4

1 回答 1

0

编辑:对不起,我一定是读得太快了。这应该这样做。创建一个数组并在循环中将数据对象添加到其中。

如果您只是使用键值对创建一个 json 对象,则可以将该对象发送到您的 c# 控制器。

   function selectedRows() {
        var selectedItems = $('#ScannedLabelTable').find(':checkbox:checked').parents('tr');
        var serial, kanbanNumber, customer, description, quantity;
        var dataArray = new Array();

        $.each(selectedItems, function (i, item) {

            var td = $(this).children('td');

            for (var i = 0; i < td.length; ++i)
            {
                var InfoObject = {
                    serial: td[1].innerText;
                    kanbanNumber: td[2].innerText;
                    customer: td[3].innerText;
                    description: td[4].innerText;
                    quantity: td[5].innerText;
                };
                dataArray.push(InfoObject);
            }
    });

    $.ajax({
        url: SEND_TO_TEXTFILE_PAGE
        , data: dataArray
        , dataType: 'json'
        , success: function (status) {
            if (status.Error) {
                alert(status.Error);
            }
         }
         , error: Hesto.Ajax.ErrorHandler
    });
}
于 2013-02-27T08:37:43.783 回答