jQuery使用特殊的HTML语法注入iframe

时间:2014-01-12 17:59:26

标签: javascript jquery iframe

寻找一种方法来选择iframe的大于和小于语法字符(“>”和“<”)并用一些文本替换它们。这是我到目前为止的地方,一个简单的输入框,其内容自动注入iframe:

HTML:

        <div class="desc-input">
            <form>
                <h2>Input Box</h2>
                <textarea></textarea>
            </form>
        </div>

        <div class="html-preview">
            <h2>Text Auto Inserted Here</h2>
            <div class="amazonHtml grid">
                <iframe></iframe>
            </div>
        </div>

jQuery:

        (function() {

        var frame = $('iframe'),
            contents = frame.contents(),
            body = contents.find('body');

            $('textarea').focus(function() {
                var $this = $(this);

            // To live update the preview box
            $this.keyup(function() {    
                body.text( $this.val() );

        });     
      });
    })();

Here's a JSfiddle of the above.

基本上我正在寻找一种方法来查找和替换所有“&gt;”和“&lt;”可以输入到文本区域,因为我打算将这个简单的文本区域转换为WYSIWYG输入区域,并且需要用户能够查看和复制输出HTML,只有它不是标准的HTML,它需要稍微不同的句法。

感谢任何洞察力。

1 个答案:

答案 0 :(得分:1)

好吧,要删除您要执行的所有<>

str.replace(/[<>]/g, '');

所以在你的情况下,它将是:

body.text( $this.val().replace(/[<>]/g, '') );

希望这会有所帮助。干杯