首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用js自动编辑窗体文本区域

使用js自动编辑窗体文本区域
EN

Stack Overflow用户
提问于 2017-07-17 14:41:44
回答 1查看 93关注 0票数 0

在用户上传文本文件之后,我尝试使用js编辑表单文本区域。HTML有

代码语言:javascript
复制
<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验证器,以确保输入不为空

代码语言:javascript
复制
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/

我自动编辑文本区域的代码是

代码语言:javascript
复制
$('textarea.code-editor').val('bla bla')

3件事:

  1. 这不管用。
  2. 使用键盘手动键入时,更新的DOM元素是pre中的一个pre。我已经成功地使用js自动地在DOM上写入了一个pre元素和$(fileDisplayArea).text('bla bla')。但它也不会影响文本区域val,从而导致验证失败。
  3. 如果我在chrome中断点并在验证中手动编辑$(this).val()。那就成功了。

请帮帮忙。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-17 15:39:18

“谢谢,”Danmoreng说,“我的错误是将DOM元素作为普通元素来处理,而不是找到相关的CodeMirror对象,然后像这样使用它

代码语言:javascript
复制
relevantCodeMirrorObject.getDoc().setValue(output)

如何找到relevantCodeMirrorObject?这取决于你的代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45147164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档