Javascript使用包含多行的值填充输入

时间:2017-10-21 17:33:36

标签: javascript html getelementbyid

我的表单中有一个输入元素。当我按下提交按钮时,我调用一个函数,该函数从Ace Editor Api

写入一个c ++程序

我的Ace编辑器getValue()函数返回我通过

写入输入元素的代码
document.getElementById("id_code").value = editor.getValue();
//alert(editor.getValue());
//alert(document.getElementById("id_code").value);
//id_code is id of my input element in html
//this snippet is called from function onclick submit button

但是,ace编辑器包含由此代码段转义的新行。就像我在浏览器中警告了两件事(在评论中提到),这里是截图 Ace editor one

input element one

正如你可以看到这两个因换行而异,我不想要这个。如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您可以在客户端添加一个功能,如下面的那个

<script type="text/javascript" language="javascript">

    function repCRLFData(value)
    {
        var newValue = null;
        var cr = "\\r";
        var lf = "\\n";

        try
        {
            newValue = value.split(cr).join("");
            newValue = newValue.split(lf).join("");
        }
        catch(e)
        {
            alert("repCRLFData Error:  " + e.Message);
        }
        finally
        {

        }

        return newValue;
    }

</script>

并使用

调用它

document.getElementById(“id_code”)。value = repCRLFData(editor.getValue());

答案 1 :(得分:0)

html中的input元素只包含1行。所以要存储多行文本,请使用textarea!