亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

清除輸入文本失敗

清除輸入文本失敗

慕斯709654 2023-10-30 20:29:18
我正在制作一個聊天系統,當用戶聊天時,它會清除輸入。該變量msg是用戶輸入的文本。let msg = document.querySelector("input").value;我以為這msg = "";可以清除輸入,但事實并非如此。但由于某種原因document.querySelector("input").value = "";起作用了。它們不是完全相同的東西嗎?
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

沒有不同的消息僅分配值而不分配元素。如果你說let msg = document.querySelector("input"),msg.value="";它會起作用,因為味精是這里的元素。在您的代碼中,msg 是值(而不是元素的值)。



查看完整回答
反對 回復 2023-10-30
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

value輸入元素的屬性實際上是一個getter /setter,類似于innerHTMLof 元素。當您分配給屬性時,setter 會運行并設置 DOM 中元素的狀態。當您通過訪問 獲取屬性時.value,getter 會運行并檢索 DOM 中元素的狀態。

為了設置新值,您必須運行設置器,這需要分配給屬性,例如

document.querySelector("input").value = "";

除了元素之外,在幾乎所有情況下,重新分配變量本身永遠不會產生任何副作用。無論你在做什么,msg = '' 單獨做任何事都做不到,除非msg稍后使用。


查看完整回答
反對 回復 2023-10-30
  • 2 回答
  • 0 關注
  • 106 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號