jquery easyui datagrid 行编辑,动态改变编辑器类型,获取编辑行输入的值

if ($.fn.datagrid) {
    $.extend($.fn.datagrid.methods, {
        currentRowIndex: function (jq, obj) {
            return $(obj).closest("tr.datagrid-row")[0].rowIndex;
        },
        changeEditor: function (jq, p) {
            return jq.each(function () {
                var dg = $(this);

                var index = p.index;
                if (typeof (index) != "number") {
                    index = $(index).closest("tr.datagrid-row")[0].rowIndex;
                }

                var editor = dg.datagrid('getEditor', { index: index, field: p.field });
                var diveitor = $(editor.target).closest("div.datagrid-cell");
                var editortd = $(editor.target).parent();
                var opts = dg.datagrid("options");
             

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
EasyUI Datagrid 编辑后,可以通过以下步骤保存数据: 1. 获取编辑后的数据:在 Datagrid 编辑完成后,可以通过 `datagrid('getChanges')` 方法获取到修改的数据。 2. 发送数据到后台:使用 AJAX 技术将修改后的数据发送到后台进保存。可以使用 jQuery 中的 `$.ajax()` 方法或者 `$.post()` 方法实现。 3. 处理保存结果:后台保存数据完成后,需要返回相应的结果。可以使用 JSON 格式返回保存结果。根据返回结果,可以给出相应的提示信息。 下面是一个示例代码: ```javascript // 获取修改后的数据 var changes = $('#datagrid').datagrid('getChanges'); // 发送数据到后台保存 $.ajax({ url: 'save.php', type: 'post', data: {changes: JSON.stringify(changes)}, dataType: 'json', success: function(result){ if(result.success){ // 保存成功,刷新数据 $('#datagrid').datagrid('reload'); }else{ // 保存失败,给出相应的提示信息 alert(result.message); } } }); ``` 在后台处理保存数据的代码中,可以根据需求使用相应的技术进数据保存。例如,可以使用 PHP 的 PDO 技术进数据库操作,代码如下: ```php // 获取修改后的数据 $changes = json_decode($_POST['changes'], true); // PDO 连接数据库 $dsn = "mysql:host=localhost;dbname=mydatabase;charset=utf8"; $user = "myuser"; $pass = "mypassword"; $pdo = new PDO($dsn, $user, $pass); // 开始事务 $pdo->beginTransaction(); try { // 循环保存修改后的数据 foreach($changes as $change){ $id = $change['id']; $name = $change['name']; $age = $change['age']; // 更新数据库中的数据 $sql = "UPDATE mytable SET name=?, age=? WHERE id=?"; $stmt = $pdo->prepare($sql); $stmt->execute([$name, $age, $id]); } // 提交事务 $pdo->commit(); // 返回保存成功的结果 $result = array('success' => true); echo json_encode($result); } catch (PDOException $e) { // 回滚事务 $pdo->rollBack(); // 返回保存失败的结果 $result = array('success' => false, 'message' => $e->getMessage()); echo json_encode($result); } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值