function replaceVal() { var _content = $("#txtCustom").val().replace(/\n/g, "@"); $("#txtCustom").val(_content); }
問題:我的需求類似於現在寄快遞時在公眾號填寫信息的功能,即直接將信息粘貼到文本框中,自動識別信息,然后填寫。
不過我的更簡單,我只要得到輸入的信息,保持其換行的狀態,放到其他地方使用即可。
所以我這里只是簡單的將換行符“\n”替換成了“@”。
有一篇文章說不能用.val()和.text(),不然只能替換第一個換行符,得用.html()。
不過我試過之后,發現.text()和.html()都是獲取不到內容的,只用.val()可以,而且也能都替換掉。
看了網上其他bz的文章解決的問題,在這里一並感謝!
-------------------------------------------------------5.14更新--------------------------------------------------------
再w3cschool上學習上時看到如下內容:
三個簡單實用的用於 DOM 操作的 jQuery 方法:
-
text() - 設置或返回所選元素的文本內容
-
html() - 設置或返回所選元素的內容(包括 HTML 標記)
-
val() - 設置或返回表單字段的值
運行提供的實例后,發現val()能讀取到的是用戶輸入到表單字段中的值,或者表單中的默認值,使用text()和html()是無法獲取的;
同樣的,val()不能獲取到元素的任何文本內容,獲取元素的文本內容只能通過text()和html();