簡體   English   中英

使用js自動編輯表單textarea

[英]automatically editing a form textarea using js

用戶上載文本文件后,我正在嘗試使用js編輯表單textarea。 HTML有

<textarea name="program" class="code-editor form-control single" data-x-language="C" data-x-lines="8" data-optional="False" style="display: none;"></textarea>

我使用的框架在發布表單之前確保有一個js驗證器,以確保輸入不為空

form.find('textarea,input[type="text"]').each(function()
{
    if($(this).attr('name') != undefined) //skip codemirror's internal textareas
    {
        if($(this).val() == "" && $(this).attr('data-optional') != "True")
            answered_to_all = false;
    }
});

我不是100%如何生成表單,但我很高興它使用的是https://codemirror.net/

我用於自動編輯文本區域的代碼是

$('textarea.code-editor').val('bla bla')

3件事:

  1. 沒用
  2. 使用鍵盤手動鍵入時,要更新的DOM元素是pre內的span 我已經設法使用js自動在DOM上寫代碼,以找到pre元素和$(fileDisplayArea).text('bla bla') 但是它也不會影響文本區域的val因此無法通過驗證。
  3. 如果我在chrome中斷點並在驗證中手動編輯$(this).val() 然后就可以了。

幫助請。

謝謝@Danmoreng我的錯誤是將DOM元素作為普通元素處理,而不是找到相關的CodeMirror對象並像這樣使用它

relevantCodeMirrorObject.getDoc().setValue(output)

如何找到relevantCodeMirrorObject 這取決於您的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM