【问题标题】:how to access to textarea of jquery wysiwyg plugin?如何访问 jquery wysiwyg 插件的 textarea?
【发布时间】:2010-01-28 11:54:05
【问题描述】:

我正在为一个项目使用所见即所得插件 (http://code.google.com/p/jwysiwyg/),如果 textarea 为空或在提交表单之前不向用户发出警报,我会得到,但这个插件创建了一个 iframe,我无法得到它.

这是由插件生成的 html,将 textarea 替换为 id #testo

<p><div class="wysiwyg" style="width: 896px;"> 

    <div style="clear: both;"><!-- --></div>
    <iframe tabindex="0" id="testoIFrame" style="min-height: 130px; width: 888px;" src="javascript:false;" frameborder="0">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body style="margin: 0px; font-family: Arial,Helvetica,sans-serif; font-size: 12px;">

your text here

</body>
</html>

</iframe>

    </div>

    <textarea style="display: none;" id="testo" name="testo" rows="8">
    </textarea></p>

文本区域不显示。 如果 iframe 中没有文本,我会在内容 div 中添加一个类:

$('#testo').addClass('border');

【问题讨论】:

    标签: jquery forms wysiwyg


    【解决方案1】:

    我相信这会奏效..

    $('#your_form_id').submit(
      function(){
        $testoTextarea = $('#testo');
        $testoFrame = $('#testoIFrame');
        if ($testoTextare.val() == '')
           {
             $testoFrame.addClass('border');
             return false;
           }
        return true;
      }
    );
    

    问题是,在提交时,插件必须将文本放回 textarea 才能将其传递到下一页..
    此外,iframe 采用的 id 是原始 textareas id + 'IFrame',因此很容易识别它...

    【讨论】:

    • 不起作用,如果#testo 为空且未添加类,则表单也会提交。
    • 你能给我们看更多的代码吗..就像实际的表单一样,如果你使用一些ajax代码来提交表单,请告诉我们..
    猜你喜欢
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-11
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多