Javascript 我如何读取';编辑了什么?

Javascript 我如何读取';编辑了什么?,javascript,tinymce,Javascript,Tinymce,当我单击“编辑下面的HTML,然后单击显示”按钮时,我的输入文本工作正常,但当我编辑它们时,我的tinymce文本区域将不工作。他们会将它的旧值发送到iframe,但不会发送新值。编辑tinymce文本区域时,如何发送新值?下面是jsfiddle:和代码: <script type="text/javascript"> function init(buttonid, name, iframeid) { document.getElementById(buttonid).add

当我单击“编辑下面的HTML,然后单击显示”按钮时,我的输入文本工作正常,但当我编辑它们时,我的tinymce文本区域将不工作。他们会将它的旧值发送到iframe,但不会发送新值。编辑tinymce文本区域时,如何发送新值?下面是jsfiddle:和代码:

<script type="text/javascript">
function init(buttonid, name, iframeid) {
    document.getElementById(buttonid).addEventListener('click',function() {
//        this.style.backgroundColor = '#cc0000';
      gJSL_displayInput(name, iframeid)
    },false);
    gJSL_displayInput(name, iframeid);
}

window.onload = function() {
init('thisButton','test','iframetest');
init('thisButtona','testa','iframetesta');
init('thisButtonb','testb','iframetestb');
}

    function gJSL_displayInput(nameInput, idOutput) {

        var loc = "::JSLearning::gJSL_displayInput()";
        try {
            var ifrm = document.getElementById(idOutput);
            var cnt = (ifrm.contentWindow || ifrm.contentDocument);
            var doc;
            doc = cnt.document;
            doc.open();
            var inputs = document.getElementsByName(nameInput);
            for(var i = 0; i < inputs.length; i++) {
                doc.write(inputs[i].value + "<br />");
            }
            doc.close();
        } catch (e) {
            exceptionAlert(loc, e);
        }
    }
</script>

<script src="//tinymce.cachefly.net/4.0/tinymce.min.js"></script>
<script>
        tinymce.init({selector:'textarea'});
</script>

<div class="scrollbar">
<input id="test1" name="test" value="ajkla;ldkfj">
<input id="test2" name="test" value="bla2">
<input id="test3" name="test" value="bla3">
<input id="test4" name="test" value="bla4">
<input id="test5" name="test" value="bla5">

<br><br>

<textarea class="ckeditor" id="test6" name="test"></textarea>

<br><br>

<input id="test7" name="test" value="bla7">

<br><br>

<textarea id="test8" name="test">HELLO WORLD</textarea>

<br><br>

<textarea id="test9" name="test">HI EVERYBODY</textarea>

<br><br>

<input id="thisButton" type="button" name="Display" value="Edit HTML Below then Click to Display"/>
</div>


<div class="scrollbar"><iframe id="iframetest" src="" style="background: White;"></iframe></div>

函数init(buttonid、name、iframeid){
document.getElementById(buttonid).addEventListener('click',function()){
//this.style.backgroundColor='#cc0000';
gJSL_displayInput(名称,iframeid)
},假);
gJSL_显示输入(名称,iframeid);
}
window.onload=函数(){
init('thisButton','test','iframetest');
init(‘thisButtona’、‘testa’、‘iframetesta’);
init('thisButtonb','testb','iframetestb');
}
功能gJSL_displayInput(名称输入、idOutput){
var loc=“::JSLearning::gJSL_displayInput()”;
试一试{
var ifrm=document.getElementById(idOutput);
var cnt=(ifrm.contentWindow | | ifrm.contentDocument);
var-doc;
doc=cnt.document;
doc.open();
var inputs=document.getElementsByName(nameInput);
对于(变量i=0;i”);
}
doc.close();
}捕获(e){
例外ERT(loc,e);
}
}
init({选择器:'textarea'});






你好,世界

大家好

您可以使用以下代码:

content8 = tinyMCE.get('test8').getContent();
doc.write(content8);

content9 = tinyMCE.get('test9').getContent();
doc.write(content9);
从tinyMCE更新的值中获取值


我为您构建的。

上次我使用tinyMCE时,它没有自动更新文本区域功能。。 因此,在提交表单之前,请使用
.getContent()
更新您的文本区域。。 这里是链接

因此,您的代码将如下所示 功能gJSL_displayInput(名称输入、idOutput){

var loc=“::JSLearning::gJSL_displayInput()”;
试一试{
var ifrm=document.getElementById(idOutput);
var cnt=(ifrm.contentWindow | | ifrm.contentDocument);
var-doc;
doc=cnt.document;
doc.open();
var inputs=document.getElementsByName(nameInput);
对于(变量i=0;i”);
其他的
单据写入(输入[i].value+“
”); } doc.close(); }捕获(e){ 例外ERT(loc,e); } }
    var loc = "::JSLearning::gJSL_displayInput()";
    try {
        var ifrm = document.getElementById(idOutput);
        var cnt = (ifrm.contentWindow || ifrm.contentDocument);
        var doc;
        doc = cnt.document;
        doc.open();
        var inputs = document.getElementsByName(nameInput);
        for(var i = 0; i < inputs.length; i++) {
            if(inputs[i].tagName == 'TEXTAREA')
              doc.write(tinyMCE.get(inputs[i].id).getContent() + "<br />");
            else
              doc.write(inputs[i].value + "<br />");
        }
        doc.close();
    } catch (e) {
        exceptionAlert(loc, e);
    }
}