【问题标题】:Is there a way to, when pressing Enter key, save the data directly on database using slickgrid?有没有办法在按 Enter 键时使用 slickgrid 将数据直接保存在数据库中?
【发布时间】:2019-05-22 15:33:30
【问题描述】:

我正在尝试 slickgrid 插件!当我按下“保存”按钮时,我可以在数据库上红色、编辑和添加数据。但是,我试图做与 excel 相同的操作,在其中按 Enter 键,它会实时更新数据库。 我进入了按下键的位置,但是根本没有数据。它访问该功能,但没有任何反应。有什么帮助吗?提前致谢

我已经尝试使用 slickgrid 本身的 grid.onAddNewRow.subscribe(function (e, args) ,但它只是不更新​​。如果我只插入一个新行并按“保存”,它将添加到数据库!

            $(document).keydown(function () {
                var keyPressed = event.keyCode || event.which;
                if (keyPressed == 13) {
                    console.log("im in");
                    grid.onAddNewRow.subscribe(function (e, args) {
                        var idData = jsonResult[key].id + 1;
                        var item = { "id": idData, "t_nome": "", "t_prof": "", "t_data": "", "t_morada": "", "t_percCompleto": "" };
                        $.extend(item, args.item);
                        dataView.addItem(item);
                    });

                } else {
                    return true;
                }
            });

我期待,在用户按下 Enter 键后,它会在 DB 上实时更新,但这并没有发生。

附:我使用var idData = jsonResult[key].id + 1,所以它可以在网格上增加。

【问题讨论】:

  • 你能告诉我们你用什么示例页面来测试这个吗?另外,请检查您使用的是 6pac repo github.com/6pac/SlickGrid/wiki/Examples
  • 你好@BenMcIntyre!我开始使用示例 4,然后“适应”了! 6pac.github.io/SlickGrid/examples/example4-model.html 从这个中,如果我单击保存按钮(由我制作),我可以在 DB 上插入和更新。现在我正在尝试当用户按下回车键时,但不知何故,它什么也没做。

标签: asp.net asp.net-mvc slickgrid


【解决方案1】:

这就是我得到的解决方案

grid.onAddNewRow.subscribe(function (e, args) {
            var idData = jsonResult[key].id + 1;
            var item = { "id": idData, "t_nome": "", "t_prof": "", "t_data": "", "t_morada": "", "t_percCompleto": "" };
            $.extend(item, args.item);
            dataView.addItem(item);
            grid.onKeyDown.subscribe(function (e) {
                var keyPressed = event.keyCode || event.which;
                if (keyPressed == 13) {
                    alert(item);
                    var myJSON = JSON.stringify(item);
                    $.post("/SlickTests/editGrid", $("input[name=mydata]").val(myJSON))
                }
            });
        });`

但现在它给了我一个反序列化错误(无法将当前 JSON 对象反序列化为类型“System.Collections.Generic.List”! 永无止境,得到答案! 希望它可以帮助某人:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-11
    • 1970-01-01
    • 2020-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多