跳至內容
Astera Technology

多行文字欄的預設值,要放在哪裏?

多行欄位初始文字寫在標記之間;改過的現值與原本預設值要分開看。

可以修改現值;原本預設文字另行保留。

下載完整個案資料及參考答案 ↓

先看這個例子

多行欄位一開始是「帶同原始檔。」。元素內的原文訂出預設值。把內容改成「已修改筆記。」後,現值會變,原本的預設值仍保留。

輸入與瀏覽器原生結果
情況輸入或查看方法結果與意思
初始現值讀取 value帶同原始檔。
原本預設讀取 defaultValue帶同原始檔。
修改後把現值改成「已修改筆記。」value=已修改筆記。;defaultValue 仍是帶同原始檔。
下載可編輯 CSV ↓

瀏覽器怎樣處理

textarea 的初始和預設值來自內部文字,不是 value 屬性。使用者改過現值後,這個已修改值與預設原文分開。本例只改本地控制項,不會儲存筆記或同步草稿。

textarea 的 value 屬性不能設定初始文字

反例把元素內容留空,想用 value 屬性提供文字;這不是 textarea 設定初始值的方法。

反例原始碼,請另開例子核對
<label for="notes">工作坊筆記</label><textarea id="notes" rows="3" value="帶同原始檔。"></textarea>

反例即使寫了 value 屬性,value 和 defaultValue 都是空字串。

試着修正

欄位現值已是「已修改筆記。」,defaultValue 仍是原指示。這次輸入有改掉原本預設值嗎?

查看參考答案

沒有,只改了現值。若要改預設值,須另行更新,並清楚訂明已經有人改過的欄位應怎樣處理。

  • 輸入前後,比較 value 和 defaultValue。
  • 可見標籤要繼續對應 textarea 的 id。

原始例子檔案

相關資源