我想得到一个tinymce textarea的价值
<textarea id="thetextarea"></textarea>
function showPreview(value) { $("#preview-container").load("/material-preview.PHP",{s:value}); } $('thetextarea').live("keyup",function (e) { var material = this.value; showPreview(material); return false; });
如果我尝试选择textarea id thetextarea它不工作(如果我不使它成为一个tinymce字段工作)。
与firebug我看到文本,当textarea是tinymce转换,在:
<body id="tinymce" class="mceContentBody"></body>
但这也不行($(‘#tinymce’))
$('mceContentBody').live("keyup",function (e) { var material = this.value; showPreview(material); return false; });
根据请求应用了tinyMCE后的HTML代码(来自firebug)
<textarea id="material-input" class="mceEditor text" style="width: 310px ! important; height: 250px ! important; display: none;" name="material" aria-hidden="true"></textarea> <span id="material-input_parent" class="mceEditor defaultSkin" role="application" aria-labelledby="material-input_voice"> <span id="material-input_voice" class="mceVoiceLabel" style="display:none;">Rich Text Area</span> <table id="material-input_tbl" class="mceLayout" cellspacing="0" cellpadding="0" role="presentation" style="width: 310px; height: 250px;"> <tbody> <tr class="mceFirst" role="presentation"> <tr> <td class="mceIframeContainer mceFirst mceLast"> <iframe id="material-input_ifr" frameborder="0" src="javascript:""" allowtransparency="true" title="Rich Text Area. Press ALT F10 for toolbar. Press ALT 0 for help." style="width: 100%; height: 206px;"> <html> <head xmlns="http://www.w3.org/1999/xhtml"> <body id="tinymce" class="mceContentBody " contenteditable="true" spellcheck="false" dir="ltr"> <!-- the text inside tinymce textarea --> </body> </iframe> </td> </tr> <tr class="mceLast"> </tbody> </table> </span>
解决方法
呼叫
tinyMCE.triggerSave();
之后,您将可以使用jquery选择器
$("#yourtextareaID").val();