雙擊編輯表格欄位
阿新 • • 發佈:2020-07-30
html 程式碼
<tr data-id="{$vo.id}" data-table_name="article"> <td>{$vo.id}</td> <td>{$vo.title}</td> <td>{$vo.cate_name}</td> <td>{$vo.browse_num}</td> <td class="common_edit_num" data-parse="fake_study_num"> {$vo.fake_study_num} </td> </tr>
js程式碼
$(".common_edit_num").on('dblclick',function(){ var val = $(this).html(); if(val == 0){ val = ''; } if(!($(this).has('input').length > 0)){ var str = '<input type="digit" maxlength="99" class="edit_num" value="' + val + '"/>'; $(this).html(str); $(this).find('.edit_num').focus(); } }); $(document).on('blur','input.edit_num',function(){ let parse = $(this).parent().data('parse'); var id = $(this).parent().parent().data('id'); var table_name = $(this).parent().parent().data('table_name'); var val = $(this).val(); $.ajax({ type:'POST', url :'/admin.php/Common/common_edit_num', data:{ 'table_name' : table_name, 'parse' : parse, 'id' : id, 'val' : val }, dataType:'json', success:function(data){ if(data.errno == 0){ layer.msg(data.errdesc); setTimeout(function(){ window.location.reload(); },500); } else { layer.msg(data.errdesc); } }, error:function(data){ layer.msg("網路錯誤"); } }); //$(this).parent().html(val); });
php tp 程式碼
public function common_edit_num(){ $id = (int) $_POST['id']; $parse = trim($_POST['parse']); $set_val = (int) $_POST['val']; $table = trim($_POST['table_name']); if (!$id || !$parse) { $this->json->err('缺少引數'); } $model_table = M($table); if (!$model_table->find()) { $this->json->err('缺少正確的表格資訊'); } $flag = $model_table->where(array('id' => $id))->find(); if (!$flag) { $this->json->err('沒有該選項'); } $data[$parse] = $set_val; $save_flag = $model_table->where(array('id' => $id))->save($data); if ($save_flag || $save_flag === 0) { $this->json->ok('更新成功'); } else { $this->json->err('編輯失敗'); } }