js部分:
1 <script language="javascript"> 2 $(document).ready(function(){ 3 var tdNods=$("#user"); 4 tdNods.click(tdClick); 5 }); 6 function tdClick(){ 7 //1.取出当前td里面的文本内容 8 var td = $(this); 9 var tdText = td.text(); 10 //2.清空td里面的文本内容 11 td.html(""); //也可以使用td.empty(); 12 //3.建立一个输入框,也就是input标签 13 var input = $("<input>"); 14 //4.将输入框的内容设为刚才保存的td里面的文本内容 15 input.attr("value",tdText); 16 td.append(input); 17 //给输入框注册事件,当失去焦点时就可以将文本保存起来 18 input.blur(function(){ 19 //将输入框的文本保存 20 var input = $(this); 21 var inputText = input.val(); 22 23 //将td的内容,即输入框去掉,然后给td赋值 24 var td = input.parent("td"); 25 td.html(inputText); 26 $.post("user_change.php",{name:inputText},function(data){ 27 28 }); 29 //让td重新拥有点击事件 30 td.click(tdClick); 31 32 }); 33 input.keyup(function(event){ 34 //1.获取当前用户按下的键值 35 //解决不同浏览器获得事件对象的差异, 36 // IE用自动提供window.event,而其他浏览器必须显示的提供,即在方法参数中加上event 37 var myEvent = event || window.event; 38 var keyCode = myEvent.keyCode; 39 //2.判断是否是ESC键按下 40 if(keyCode == 27){ 41 //将input输入框的值还原成修改之前的值 42 input.val(tdText); 43 } 44 }); 45 46 //5.将输入框加到td中 47 td.append(input); //也可以用input.appendTo(td); 48 //5.5 让文本框中的文字被高亮选中 49 //需要将jquery对象转化为DOM对象 50 var inputDom = input.get(0); 51 inputDom.select(); 52 //6.需要移除td上的点击事件 53 td.unbind("click"); 54 }; 55 56 57 </script>
表格部分:
1 <form method="post"> 2 <table width="383" border="0" cellspacing="2" cellpadding="2"> 3 <tr> 4 <td width="109">真实姓名:</td> 5 <td width="209" id="user"><?php echo $res['regrealname']; ?></td> 6 <td width="10"></td> 7 <td width="10"> </td> 8 <td width="13"> </td> 9 </tr> 10 <tr> 11 <td colspan="5"><hr color="#EFEFEF" /></td> 12 </tr> 13 <tr> 14 <td> </td> 15 <td> </td> 16 <td> </td> 17 <td> </td> 18 <td> </td> 19 </tr> 20 <tr> 21 <td>性别:</td> 22 <td><?php if($res['regsex']==2){ echo "女";}else{ echo "男";} ?></td> 23 <td> </td> 24 <td> </td> 25 <td> </td> 26 </tr> 27 <tr> 28 <td colspan="5"><hr color="#EFEFEF" /></td> 29 </tr> 30 <tr> 31 <td> </td> 32 <td> </td> 33 <td> </td> 34 <td> </td> 35 <td> </td> 36 </tr> 37 <tr> 38 <td>邮箱:</td> 39 <td><?php echo $res['regemail']; ?></td> 40 <td> </td> 41 <td> </td> 42 <td> </td> 43 </tr> 44 <tr> 45 <td colspan="5"><hr color="#EFEFEF" /></td> 46 </tr> 47 <tr> 48 <td> </td> 49 <td> </td> 50 <td> </td> 51 <td> </td> 52 <td> </td> 53 </tr> 54 <tr> 55 <td>电话:</td> 56 <td><?php echo $res['tel']; ?></td> 57 <td> </td> 58 <td> </td> 59 <td> </td> 60 </tr> 61 <tr> 62 <td colspan="5"><hr color="#EFEFEF" /></td> 63 </tr> 64 <tr> 65 <td> </td> 66 <td> </td> 67 <td> </td> 68 <td> </td> 69 <td> </td> 70 </tr> 71 <tr> 72 <td>生日:</td> 73 <td><?php echo $res['regbirthday']; ?></td> 74 <td> </td> 75 <td> </td> 76 <td> </td> 77 </tr> 78 <tr> 79 <td colspan="5"><hr color="#EFEFEF" /></td> 80 </tr> 81 <tr> 82 <td> </td> 83 <td> </td> 84 <td> </td> 85 <td> </td> 86 <td> </td> 87 </tr> 88 <tr> 89 <td>家乡:</td> 90 <td><?php echo $res['oldadress']; ?></td> 91 <td> </td> 92 <td> </td> 93 <td> </td> 94 </tr> 95 <tr> 96 <td colspan="5"><hr color="#EFEFEF" /></td> 97 </tr> 98 <tr> 99 <td> </td> 100 <td> </td> 101 <td> </td> 102 <td> </td> 103 <td> </td> 104 </tr> 105 <tr> 106 <td>现居地:</td> 107 <td><?php echo $res['nowadress']; ?></td> 108 <td> </td> 109 <td> </td> 110 <td> </td> 111 </tr> 112 <tr> 113 <td colspan="5"><hr color="#EFEFEF" /></td> 114 </tr> 115 <tr> 116 <td> </td> 117 <td> </td> 118 <td> </td> 119 <td> </td> 120 <td> </td> 121 </tr> 122 <tr> 123 <td>职位:</td> 124 <td><?php echo $res['unit']; ?></td> 125 <td> </td> 126 <td> </td> 127 <td> </td> 128 </tr> 129 <tr> 130 <td colspan="5"><hr color="#EFEFEF" /></td> 131 </tr> 132 <tr> 133 <td> </td> 134 <td> </td> 135 <td> </td> 136 <td> </td> 137 <td> </td> 138 </tr> 139 <tr> 140 <td>工作状况:</td> 141 <td><?php echo $res['workstate']; ?></td> 142 <td> </td> 143 <td> </td> 144 <td> </td> 145 </tr> 146 <tr> 147 <td colspan="5"><hr color="#EFEFEF" /></td> 148 </tr> 149 <tr> 150 <td> </td> 151 <td> </td> 152 <td> </td> 153 <td> </td> 154 <td> </td> 155 </tr> 156 <tr> 157 <td>婚姻状况:</td> 158 <td><?php echo $res['marry']; ?></td> 159 <td> </td> 160 <td> </td> 161 <td> </td> 162 </tr> 163 <tr> 164 <td colspan="5"><hr color="#EFEFEF" /></td> 165 </tr> 166 <tr> 167 <td> </td> 168 <td> </td> 169 <td> </td> 170 <td> </td> 171 <td> </td> 172 </tr> 173 <tr> 174 <td>座右铭:</td> 175 <td><?php echo $res['motto']; ?></td> 176 <td> </td> 177 <td> </td> 178 <td> </td> 179 </tr> 180 <tr> 181 <td colspan="5"><hr color="#EFEFEF" /></td> 182 </tr> 183 <tr> 184 <td> </td> 185 <td> </td> 186 <td> </td> 187 <td> </td> 188 <td> </td> 189 </tr> 190 </table> 191 </form>
用ajax啊
能说说嘛,初学 不懂怎么用
@韵脚学员: 你按照这个方向研究研究就会了,这也不是一句两句能说懂的
@刘宏玺:
$.ajax({ type:"post", url:"user_change.php", data:"realname="+$("input[name='#user']").val(), success:function(msg){ alert("msg"); } })
php页面那边怎么写,有点搞不懂,可以说说嘛
@韵脚学员: 去哦没有学过php啊,这种应该是入门级的吧,去网上下载一个小demo看看,估计一看就懂了
@刘宏玺: 类似的demo找不到啊,找到我也不会问了唉
@刘宏玺:
1 1 function add(){ 2 2 $(document).ready(function(){ 3 3 $("input").blur(function(){ 4 4 5 5 $.ajax({ 6 6 type:"post", 7 7 url:"user_change.php", 8 8 data:"realname="+$("input[id='#user']").val(), 9 9 success:function(msg){ 10 10 alert("msg"); 11 11 } 12 12 13 13 }); 14 14 }); 15 15 }); 16 16 17 17 18 18 <?php 19 19 header("Content-typ:text/html;charset=utf-8"); 20 20 include("conn/conn.php"); 21 21 $realname=$_POST['realname']; 22 22 $sql="update tb_user set regrealname='$realname'"; 23 23 $result=$pdo->prepare($sql); 24 24 $result->execute(); 25 25 if($res=$result->fetch(PDO::FETCH_ASSOC)) 26 26 echo "添加成功"; 27 27 else 28 28 echo "ERROR"; 29 29 30 30 ?> 31 更新到数据库的是一个undefined值,是获取值写错了吗
@韵脚学员: 第8行,data后面是json的数据,类似这样 data: { '_o': 'GetData' },
@刘宏玺: 用ajax搞定了
1 if(inputText.length>1){ 2 ajax("user_change.php",'realname='+inputText,function(msg){ 3 4 alert("修改成功!"); 5 location.reload(); 6 }); 7 }else{ 8 alert("修改失败,原因:格式需要2个字符以上!"); 9 location.window(history.go(0)); 10 }
@韵脚学员: 你的学习能力很强!