怎么在PHP中使用jQuery实现一个双击修改table表格功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
具体如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>即点即改</title> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> </head> <body> <?php $con = array( array("id"=>1,"姓名"=>"张三","性别"=>"女"), array("id"=>2,"姓名"=>"李四","性别"=>"男"), array("id"=>3,"姓名"=>"王五","性别"=>"男")); // print_r($con);die; ?> <table align="center" border="1"> <?php foreach ($con as $key => $v): ?> <tr id="<?= $v['id'];?>"> <td signs="user_name" > <input type="text" disabled="disabled" readonly="readonly" value="<?= $v['姓名'];?>" > </td> <td signs="user_sex" > <input type="text" disabled="disabled" readonly="readonly" value="<?= $v['性别'];?>" > </td> </tr> <?php endforeach; ?> </table> </body> </html> <script> //双击触发事件 $("tbody>tr>td").dblclick(function(){ //获取到 当前 input 下的元素(原值) window.olds = $(this).children('input').val(); if(olds==undefined) { return false; } var signs = $(this).attr('signs'); //获取属性值(这些值方便php后台的操作) var user_id = $(this).parent().attr("id"); //接受当前点击的ID(tr里的id) //双击之后可以修改 $(this).find('input').attr("disabled",false); $(this).find('input').attr("readonly",false); $(this).find('input').css("border",'1px solid deepskyblue'); $(this).find('input').attr('id', signs + "_" + user_id); //方便下面失去焦点事件 找ID(没有这个无法定位到tr里面的id属性) //循环这些值从而判断是修改数据的类型,对一些特殊类型的数据进行特殊处理 switch(signs){ case 'user_name': $("#" + signs + "_" + user_id).focus().on("blur",function(){ var content = $(this).val(); if(content!=olds) //与原值不同则传到后台 { // alert(user_id);alert(signs);alert(content); /* 通过getJSON将数据传输到后台 USER_ID SIGNS CONTENT */ } $(this).attr('disabled', 'disabled'); $(this).attr('readonly', 'readonly'); $(this).css('border', '0'); $(this).css('background', '#fff'); $(this).css('text-align', 'center'); }) break; case 'user_sex': $("#" + signs + "_" + user_id).focus().on("blur",function(){ var content = $(this).val(); if(content!=olds) { // alert(user_id); } $(this).attr('disabled', 'disabled'); $(this).attr('readonly', 'readonly'); $(this).css('border', '0'); $(this).css('background', '#fff'); $(this).css('text-align', 'center'); }) } }) </script>
关于怎么在PHP中使用jQuery实现一个双击修改table表格功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。