【问题标题】:How to insert selected Grid Checkbox to database如何将选定的网格复选框插入数据库
【发布时间】:2013-11-21 07:12:02
【问题描述】:

我有一个包含复选框的网格。我们成功地使用 GetCheckProduct() 函数正确地获取了 All ChecksRecord,问题是如何在单击 AddSelectedProduct 时从 GetCheckProduct() 传递给控制器​​选择的产品。

这是目前为止的代码。谢谢

<script>
      var getCheckProduct = function () {
        var grid = $('#Product').data().kendoGrid;
        var elem = grid.element;
        var data = $('#Product').data().kendoGrid.dataSource.data();
        var count = 0;
        var res = [];
        var checkbox = elem.find(".chkbx").each(function () {
            var t = $(this);
            if (t.is(":checked")) {
                res.push(data[count].TRN);
            }
            count += 1;
        });
        return res;
    };

      $("#AddSelectedProduct").on("click", function () {




        $.ajax({
            type: 'POST',
            url: '@(Url.Content("~/ProdDetails/AddSelectedProduct/"))',
            data: {

                "selectedProduct": getCheckProduct()



            }
        });
        return false;
    });


</script>

问题是 selectedProduct 没有传递给控制器​​。

Controller:
public ActionResult AddSelectedConsumer(string[] selectedProduct, Guid ReferralListID)
        {
            UpdateConsumer(selectedProduct);

            return Json(null);
        }

【问题讨论】:

    标签: asp.net-mvc-4 razor kendo-ui


    【解决方案1】:

    我认为您需要使用JSON.stringify([getCheckProduct()) 对数据进行字符串化:

     $.ajax({ 
          type: "POST",
          url: '@(Url.Content("~/ProdDetails/AddSelectedProduct/"))',
          datatype: "json",
          contentType: 'application/json; charset=utf-8',
          data: JSON.stringify([getCheckProduct())              
     });
    

    或将您的 ajax 请求的 traditional 选项设置为 true:

     $.ajax({ 
          type: "POST",
          url: '@(Url.Content("~/ProdDetails/AddSelectedProduct/"))',
          datatype: "json",
          traditional: true,
          data: { 'selectedProduct': getCheckProduct() }              
     });
    

    但是,您的控制器操作还有第二个参数,因此根据您的配置,如果您发送的数据中没有该参数,它可能不会被调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-15
      • 1970-01-01
      • 2010-09-19
      相关资源
      最近更新 更多