jQuery中$('#selector).html('')是清空??----html()、text()、val()的区别

来源:互联网 发布:怎么查看手机支持网络 编辑:程序博客网 时间:2024/05/21 18:45

今天因为jQuery中$('#selector).html('')被坑死了。不乖他,怪俺才疏学浅。

这几天没日没夜的修改代码,我是一个初学者,学起来有点吃力,还好师傅有耐心,给了我足够的时间去思考。同时,师傅对我只是点到为止,剩下的自己一步步实现。

先说一下,我今天干的蠢事。因为师傅源代码的基础上修改,所以之前就有$('#selector).html('')这条语句了。顾名思义就是清空,对吧!但是此处的selector是表格不是文本,我每添加一条记录,理想的效果是上次添加的信息会自动清空,但是他没有清空,怎么回事。

陷入苦思冥想中,给代码中各个地方添加$('#selector).html('')(当然是在应有的逻辑处添加,不是随便添加),然并卵,到底哪出错了呢。

找度娘,搜索“在jquery里面怎么给txtbox赋空值”,出现$("#编辑框的ID").val("")。于是我把html()换成val(),程序正常了。Perfect!

再次参考前人的经验,总结一把:

①.html()用为读取和修改元素的HTML标签对应js中的innerHTML
.html()是用来读取元素的HTML内容(包括其Html标签),.html()方法使用在多个元素上时,只读取第一个元素
②.text()用来读取或修改元素的纯文本内容  对应js中的innerText
.text()用来读取元素的纯文本内容,包括其后代元素;.text()方法不能使用在表单元素上
③.val()用来读取或修改表单元素的value值
    .val()是用来读取表单元素的"value"值,.val()只能使用在表单元素上

关于三者的区别

   1 .val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。


    2 .html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。


0 0