在网易云课堂跟着李炎恢老师的视频在学习jQuery EasyUI,跟着把所有代码都敲一遍,最后一个学习是一个后台管理界面。
基本是把之前的知识串起来实现一下。所以我很重视这一块,希望自己也能做一个简单的管理界面,尤其是这个例子已经包含了
从用户登录到写入数据库的整个过程,很具有参考性。结果就遇到了下面这个坑,基本一周的时间,有时候做梦都在琢磨到底错
在哪儿了。可是所有代码都是按视频上敲的,难道敲错了?反复看视频,敲了N遍,最后可以保证逗号都不会错了,但是问题依
旧。最后从网上找到李老师的代码和讲义,还是不对,难道老师也会错,还是我的环境有问题?最后还是在CSDN上得
到 Logerlink老师的帮助,得以解决,这个必须记下来,以备以后提醒自己。
坑:在修改管理员权限或密码时,除非只有一个管理员用户,否则选admin(数据库里id=1)时,实际总是第二条被修改了,或者说如果有10个用户,修改第一个其实后台拿到的总是最后一个的id。代码如下:
最后基本能确定就是前台向后台传递的id出错,总是将最后一个用户的id回传造成的,当时感觉出问题的就是下面的代码,可是
又不知道错在哪里,因为原来视频教程就是这么写的:
data : {
id : $('input[name="id"]').val(),
password : $('input[name="password_edit"]').val(),
auth : $('#auth_edit').combotree('getText'),
},
最后 Logerlink老师 帮我找到了原因,就是选择器挖的坑,改成id : $('#manager_edit input[name="id"]').val(),一切正常了。
那么为什么视频上老师演示没有出错呢?因为演示的时候一共有两条记录,修改的总是最后一条,所以总是正常的。
教训:
1、选择器尽量写完整,不能图省事,否则出了问题都不知道什么原因,很难找到;
2、不能迷信视频教程上老师的操作,因为老师演示时不会像测试一样,发现所有的问题。
特此存照,并且再次感谢 Logerlink老师 !
相关代码已放在:
https://download.csdn.net/download/dxy2798/10485331