00:00
昨天呢,我们已经可以添加一个新的员工的数据库了,那下边我们来看一下这个,呃,在员工添加时候的Ajax检验检验什么呀,那个用户名是不是可用吧。这没做过,OK,拿过来打开我们这个页面顶部,然后我应该是在这块添加什么事件啊,为哪一个哪一个节点添加什么事件,应该是为这个lastname吧,听什么事件啊提交我是不是应该是什么呢?应该是我那个鼠标一移开,我就要验证这个用户名是不是合法呀。那应该填什么时间,是鼠标移开吗?前提是还有一个前提,我给那个呃,文本框里边那个内容发生变化的时候吧,你要不变的话,以前是AA,我放进去了,然后又拉开还是AA,你用法HX请求吗?用吗?不需要吧,所以说发的应该是一个change,当它改变的时候,我要去发送一个HX请求验证,嗯,我这个last name是不是合法,好的,那我现在我我来写一下。
01:43
首先导入DF库。就是那个杰宽对吧。CTRLC这块的话,图方便用的都是相对路径,嗯,严格的讲的话,我们应该是写绝对路径的script来方式,然后应该是。
02:22
那个lastname这个时候的话呢,我们看我们即便是不加ID的话,能不能直接定位到这个lastname呢?可以吧,怎么写啊,通过什么?通过name吧,Input括号name等于last name.change如果发生改变的时候,Function啊or value等于。
03:01
base.v然后呢,去一下前后空格,如果在V不等于空的情况下再发吧,就是说它是改了,比方说以前是这个AA,然后把它给弄成了什么呢?弄通出了一个空的一个字符串,这个时候你不用发吧,你可以说啊,这个拉name是必须要输入的,给他一个提示是可以的啊,我告诉他。Last name不能为空,哎,我要发送A请求,先写个他吧,来发送Ajax请求,咱看看这个写的对不对。
04:00
这好起来。看一下爱六,注意看哈,我写个AA发请求吧,去掉还加了一些空格进去,是不是不能为空啊,行了,基本上写完了,那这块的话,我们看如何去发送这个AX请求呢?Or ul吧,等于or X等于然后。Bo请求怎么写啊,U LX function推吧,好的,我们希望的效果呢,是在呃这个位置,在这个位置,嗯,显示一个字符串,说这个用户名是可用的还是不可用的,可用的我们弄成绿色的,不可用的弄成红色的,这就是我们的这个要求,那现在的话呢,我们也可以按一个标记位的方式,比方说你传回的是一还是零,那么根据这个是一还是零来决定着它是不是可用的,嗯,If,哎,贝看等于一啊,这个表示是可用的。
05:44
表示可用L4IF,如果A它等于零,要是是呃不可用的,所以说老师那你要传的既不是一也不是零呢,表示这个什么呀,这个传输异常服务器错误。
06:11
好的,现在我们想如果要是一的话,我得怎么的,我得在这个的后边去加上一段一段话,这怎么加呀。看着哈,这个是input,我来写个this吧。S等于对同学会说,哎,你为什么要把这写到这,而不能写到,而不能写在这个里边啊。这个里边的话,你看我这个点是谁的呀,是不是解块了呀,我只有在这块的时候的话呢,这个家伙才是谁呀,它才是这个嗯,Name等于拉出name的这个文本块,所以说这样写,那我这样写一下的哈,好着哦,这样写S点或给ask,我需要在这个的后边加上一个这个HL文档,H cameral的一个小片段,那我首先看一眼this after在它的后边看一眼哈,外部插入看一眼P的after OK,没问题,就这么写,对after写一个for。
07:36
For color等于green啊,Last nameme可用好的好,不可用给个变成哎啊,否则我给提示一下说啊,我就不这样提示了,哈乐是什么呀,嗯,不气哦,行,这样的话呢,这个就写完了,然后我们需要去写什么呀,需要去写验证lastname,这个呢,需要传一个last nameme过去吧,Lastname。
08:33
这个值是谁的呀?说value吧,是吧,Time后边是new,对,写完说明我们需要写一个方法吧,CTRLC保存过来,前边呢,我们搞过一个AX请求,是这么写的,我先来写它。
09:06
Public先一个值,好的,我需要验证它是不是合法的,怎么办呢?我是不是需要传入一个lastname是吧,S。嗯,比如这个参数的话呢,需要传进来,我好验证你是不是合法的,那在底层DAO需要写一个方法,什么方法呀,我用这个last name去获取对应的employee,看能不能获取到public employee employee last name left name hpll等于B。
10:12
where1.lastname等于问号,然后呢?Get section.create query HQl.S。Last。哦,花瑞一个吧,是吧,华瑞unique哎这样就可以了,U里边写的方法对,完了之后的话呢,我们到service。
11:10
斯维这块这个方法应该是这么写的,阿布里克,你可以写个布尔值意思,Last nameme是不是可用是吧?Last name last name is wedding。The last name OK,有一点小问题,有一点小问题我们看一眼哈,这样写的话呢,没啥问题,我先写着between DAo.get它吧,等于空。要光这么写的话没啥问题吧,我这个值肯定是可以获取的,如果要这个是空的话,是不是可用啊是吧,但是呢,我们在昨天进行这个配置的时候啊,我们是不是配了一个只读属性啊。
12:15
可是盖的开头的时候是只读吧,我现在这个很明显应该是一个只读吧,但我并不是以盖的开头的吧,是这样吧,懂我的意思吗?就是这个很明显应该是一个只读吧,但我不是以get开头的吧,这块拿get开头的话还真就不咋好说,所以说你这个时候的话呢,你可以有针对性的给他加一下,就是这个方法吗?嗯,写上就可以。回来。回到我们的这个里边,这完事了哈,再回来,那我就判断呗,如果。Employee service last is,那我就stream等于new,上面怎么写的什么at rain,直接复制吧,Control住C。
13:22
嗯,这个时候应该是这个时候,这个异常我们可以给他踹起来这个异常,诶这样写也行,因为这个异常是肯定不会往外抛的,大家能懂吧,只要你这块这个写对的话,是不是就没问题啊来哎,否则那我就等于他零。好了,我这块,我这个瑞克是什么。我这个return,我们找到拉的配置文献,我这块这个return跟我这个delete这个return是不是一样啊是吧,一样的,所以说我们整一个。
14:11
只要AJX体验成功的话,用它回来写上它前面的也得改吧,好了,写好了试试。走起。下来,嗯,刷新来看看哈,AA不可用A,哎是不是往后加呀,AA是不可用的,这AA也是不可用的吧,我数据库里面有对应的,有对应的记录。
15:02
是都不可用啊,你要再加一个的话可用了,但是这也太不爽了是吧,这也太不爽了,所以说基本上我们这个好用了吧,差一点什么呀。大家说差一点什么呀,你是不是才一上来需要干一个事啊,如果我后边要是有什么这个负的话,你应该先给他清了吧,是吧,只要你想干这个事的话,就应该这么做,只要后边有的话,我就要给他清的。好了,你写一个吧,把当前节点后面的所有兄弟节点删除,等于是写吧this.next all后边所有的fo.remove清除保存,再来刷新来看着啊AAAA不可用,A我还不可用啊A,诶,可用行了,这样的话呢,这个A检验就完成,就这么写好了,那我们整个写的这个流程呢,跟昨天删除那个是不是几乎一样啊,只不。
16:41
不过前端有点区别,那个是删除吧,而这个是一个校验,那个是删除一个节点,而这个是需要在后边添加一个节点吧,但是本质上都是一样。好了,那到这块的话呢,这个完整的添加就起来了,我把这个发给大家,大家先看一下。
我来说两句