最终效果



列表页面表格里双击排序修改其值

按钮样式要引入bootstrap才可以用

本文件用的是laravel框架环境

larave路由里

 Route::get('category/changestatus','Admin\CategoryController@changestatus')->name('admin.category.changestatus'); //修改属性排序/修改名字

html表格里

<script type="text/javascript">
var changeValue_url = "/admin/category/changestatus"; //双击修改值(如排序,名字)
</script> <td>
<span ondblclick="changeValue(this,{{ $vo['id'] }},'sort')">{{ $vo['sort'] }}</span>
<input style="text-align: center;display: none" class="input-text size-MINI " type="text" value="{{ $vo['sort'] }}">
</td> <!--共用js-->
<script type="text/javascript" src="/rap/admin/static/common.js"></script> //用户共用的js文件

共用的common.js里


//双击修改值(如排序,名字)
/**
*
* @param $this 当前操作的元素
* @param $id 主键id
* @param $name 要修改的字段名字
*/
function changeValue($this,$id,$name){
// console.log($id,$name);
var current_span = $($this).hide();
var current_input=current_span.siblings('input');
current_input.show();
$(current_input).unbind("blur").bind("blur",function(){
if($id == ''){
layer.alert('属性id不能为空.', {icon: 5});
return false;
}
//拿到当前input里输入的值
// var current_input_value=current_input.val(); //效果和下面一行一样
var current_input_value = $(this).val(); if(current_input_value == ''){
layer.alert('排序值不能为空.', {icon: 5});
return false;
}
if($name == 'sort'){
//匹配正整数
var int_v = /[1-9]\d*$/; //特殊字符
if(!int_v.test(current_input_value)) {
layer.alert('排序值只能为正整数.', {icon: 5});
return false;
}
} var cv_url = changeValue_url; //拿调用页面里全局js里的url
cv_url += '?id='+$id;
cv_url += '&'+ $name + '=' + current_input_value ; $.get(cv_url,function(res){
if(res.code != 0){
layer.alert(res.msg, {icon: 5});
return false;
}else{
layer.alert(res.msg, {icon: 6});
// current_input.val(sort);
// current_input.hide();
// current_span.html(sort);
// current_span.show();
$('table').load(location.href + ' table'); }
},'json');
});
}

控制器里:

   //http://api.hm/admin/category/changestatus
//修改状态
public function changestatus(Request $request)
{
$data = $request->all();
// returnMsg(1,'ok.',$data);
if(empty($data['id'])){
returnMsg(1,'id不能为空.');
} if(isset($data['sort'])){
//验证
$validator = Validator::make($request->all(),
[
'sort' => 'bail|required| integer',
],
[
'sort.required' => '排序必选',
'sort.integer' => '排序应为整数',
]
); if ($validator->fails()) {
$error=$validator->messages()->messages();
$msg = '';
if($error){
foreach ($error as $v){
$msg .= $v[0] . '; ';
}
}
returnMsg(1,$msg);
}
} $changeRes= DB::table('goods_category')
->where('id', $data['id'])
->update($data);
if(!$changeRes){
returnMsg(1,'修改失败.');
}
returnMsg(0,'修改成功.');
}

返回json函数 放在公共方法里

/**
* Created by Haima.
* Author:Haima
* QQ:228654416
* Date: 2019-02-27
* Time: 9:24
*/
/**
* 公用的方法 返回json数据,进行信息的提示
* @param $status 状态
* @param string $message 提示信息
* @param array $data 返回数据
*/
function returnMsg($status,$message = '',$data = array()){
$result = array(
'code' => $status,
'msg' =>$message,
'data' =>$data
);
exit(json_encode($result,JSON_UNESCAPED_UNICODE));
}
/*

双击 ajax修改单元格里的值的更多相关文章

  1. Excel 2003 中如何用VBA 代码访问单元格里的值及操作单元格 - 唐诗宋词的专栏 - 博客频道 - CSDN.NET

    在Excel 中编写VBA 代码,最常做的事可能就是操作表单中单元格里的数据. 我这里总结一下如何从VBA 代码中操作单元格的数据. 在VBA 代码中操作单元格需要用到Range 对象,Range 是 ...

  2. Jquery遍历table并拿到每个单元格里的值

    $('#table_id tr').each(function(i){ alert(i); if(i!=0){ //td内的文本 var v0 = $(this).children('td').eq( ...

  3. ios-根据单元格里的控件tag值,在方法外获得对应的section与row的值

    在cell的代理方法里:cellForRowAtIndexPath btn.tag = indexPath.section *100 + indexPath.row; [cell.exitPerson ...

  4. Easyui之datagrid实现点击单元格修改单元格背景颜色

    前段时间有个需求中有点击datagrid的单元格实现某种事件,调用datagrid的onclickCell这个方法很容易实现,但是体验不好啊,完全不知道自己刚才点击的是哪个单元格,然后就尝试单击单元格 ...

  5. 取得grid单元格里刚输入的文本,未保存的文本

    取得grid单元格里刚输入的文本内容,未保存的文本,正在输入的值,正在编辑的值,编辑框 dbgrid->DataSource->DataSet->UpdateRecord(); pr ...

  6. Html Table用JS导出excel格式问题 导出EXCEL后单元格里的000412341234会变成412341234 7-14 会变成 2018-7-14(7月14) 自定义格式 web利用table表格生成excel格式问题 js导出excel增加表头、mso-number-format定义数据格式 数字输出格式转换 mso-number-format:"\@"

    Html Table用JS导出excel格式问题 我在网上找的JS把HTML Tabel导出成EXCEL.但是如果Table里的数字内容为0开的的导成Excel后会自动删除0,我想以text的格式写入 ...

  7. 27.openpyxl 向指定单元格添加图片并修改图片大小 以及修改单元格行高列宽

    openpyxl 向指定单元格添加图片并修改图片大小 以及修改单元格行高列宽 from openpyxl import Workbook,load_workbook from openpyxl.dra ...

  8. Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值

    Delphi Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值 cxGrid1DBTableView1.Controller.FocusedRowIndex 当前行号 cxGrid1DB ...

  9. C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常

    在DataGridView手动添加了CheckBox列;在窗体Show的时候,遇到一个错误:错误如下: DataGridView中发生一下异常:System.FormatException:单元格的F ...

随机推荐

  1. Weka:call for the EM algorithm to achieve clustering.(EM算法)

    EM算法: 在Eclipse中写出读取文件的代码然后调用EM算法计算输出结果: package EMAlg; import java.io.*; import weka.core.*; import ...

  2. Vbox安装CentOS7及网络配置

    安装CentOS7及网络配置 Vbox和其他虚拟机一样,安装完成一个虚拟机,需要配置网络才能实现物理主机和虚拟机之间的访问.虚拟主机和Internet(外网)的访问 1.设置Vbox全局网络 单击主界 ...

  3. constructor()方法

    在做微信小程序的时候,需要对传输的数据进行加密,大牛给我介绍constructor()方法,不是很懂这个但是用了一次,今天来用自己的想法来理解这个方法 ———————————————————————— ...

  4. java maven项目 导入jar包注意

    1.将jar 包放到lib目录下 2.build path 3.点击maven主项目右键选择properties 4.选择myeclipse 下的第一个选项 5.点击add   选择archives ...

  5. 关于Visio的vba操作,遍历目录,对所有vsd文件操作,导入excel文件

    1.vba遍历要添加引用,runtime 2.不能打开单独的application,因为在获取到shape的picture属性时候,新打开的application不能够获取到.提示自动化错误. 3.定 ...

  6. OFBiz部署与运行

    下载及部署命令:http://ofbiz.apache.org/download.html OFBiz的安装部署是基于ant的,官网的案例是执行load-demo任务和start任务.以下分析是以12 ...

  7. centos下安装lnmp各个版本的几种方法

    首先我们用一种yum的方法安装,我们需要rpm源 默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | g ...

  8. 最简单的dockerfile使用教程 - 创建一个支持SSL的Nginx镜像

    什么是dockerfile?简单的说就是一个文本格式的脚本文件,其内包含了一条条的指令(Instruction),每一条指令负责描述镜像的当前层(Layer)如何构建. 下面通过一个具体的例子来学习d ...

  9. AndroidStudio 添加 AndroidAnnotations

    1.添加对apt的依赖 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.neenbedankt. ...

  10. caffe 学习(1) —— Classification: Instant Recognition with Caffe

    学习地址http://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb 1.安装m ...