【问题标题】:Save row data from editable datagrid jeasyui to database将可编辑数据网格 jeasyui 中的行数据保存到数据库
【发布时间】:2019-01-08 08:02:16
【问题描述】:

我在创建行编辑 datagrid jeasyui(不是 edatagrid)时遇到问题,当我保存行时,数据没有进入数据库。

function updaterow(target){$("#dataGrid").datagrid("refreshRow",getRowIndex(target));

      var data={                             
            "pos_name":row.pos_name,
            "pos_iis":row.pos_iis,
            "pos_cat":row.pos_cat,
                   "pos_sales":row.pos_sales

          };
        var saveurl="module/emp-position/mod-update.php?&id="+row.id;
       $.ajax({
              type:"post",
              url:saveurl,
              data:data,
             success:function(result){
                   if(data.success){
                            return data;
                                           $('#dataGrid').datagrid('reload');
                           }
                  }
         });}

希望有人能帮我解决问题

【问题讨论】:

  • 欢迎来到 Stack Overflow。由于我们无法检查 AJAX 详细信息,因此我们需要您在浏览器中查看。使用浏览器工具,查看网络开发人员部分。这应该显示所有 HTTP 请求。然后测试您的更新脚本并查看从脚本发送和接收的数据。请编辑您的帖子并包含这些详细信息。您还需要检查控制台以查看是否有任何警报或错误。

标签: jquery-ui jquery-easyui


【解决方案1】:

我怀疑这个问题与以下代码有关。

success:function(result){
  if(data.success){
    return data;
    $('#dataGrid').datagrid('reload');
  }
}

这里有两点不正确:

  • 函数通过result 而你调用data,这将是undefined
  • 您执行return,不会处理其他代码,因此不会执行您的“重新加载”调用。

尝试以下方法:

success: function(result){
  if(result.success){
    $('#dataGrid').datagrid('reload');
  }
}

success 回调通常不需要返回,但如果您选择return result,则不需要返回。使用您定义的result 将数据传递到成功回调中。所以在你的函数内部,你需要使用result来访问返回的数据。

希望对您有所帮助。

【讨论】:

  • 谢谢,但还是不行,也许我的编码从一开始就错了。对不起,我还是 jeasyui 的新手。数据仍然不想进入数据库。如果你有一个使用可编辑数据网格保存到数据库的例子,可以分享给我的学习资料。
猜你喜欢
  • 1970-01-01
  • 2016-07-31
  • 2016-03-24
  • 2014-02-17
  • 1970-01-01
  • 1970-01-01
  • 2020-09-05
  • 2013-08-11
  • 1970-01-01
相关资源
最近更新 更多