function replaceVal() { var _content = $("#txtCustom").val().replace(/ /g, "@"); $("#txtCustom").val(_content); }
问题:我的需求类似于现在寄快递时在公众号填写信息的功能,即直接将信息粘贴到文本框中,自动识别信息,然后填写。
不过我的更简单,我只要得到输入的信息,保持其换行的状态,放到其他地方使用即可。
所以我这里只是简单的将换行符“ ”替换成了“@”。
有一篇文章说不能用.val()和.text(),不然只能替换第一个换行符,得用.html()。
不过我试过之后,发现.text()和.html()都是获取不到内容的,只用.val()可以,而且也能都替换掉。
看了网上其他bz的文章解决的问题,在这里一并感谢!
-------------------------------------------------------5.14更新--------------------------------------------------------
再w3cschool上学习上时看到如下内容:
三个简单实用的用于 DOM 操作的 jQuery 方法:
-
text() - 设置或返回所选元素的文本内容
-
html() - 设置或返回所选元素的内容(包括 HTML 标记)
-
val() - 设置或返回表单字段的值
运行提供的实例后,发现val()能读取到的是用户输入到表单字段中的值,或者表单中的默认值,使用text()和html()是无法获取的;
同样的,val()不能获取到元素的任何文本内容,获取元素的文本内容只能通过text()和html();