JQuery textarea 插入 html 有点像 RTE 但不是 RTE

发布于 2024-10-15 21:04:59 字数 597 浏览 6 评论 0原文

好的,我认为应该使用 ,所以请告诉我其他情况。我希望您创建一系列“按钮”,例如 RTE,它将适当的代码插入文本区域。但请注意,这不是“真正的 RTE”。我想要的是一个带有像 RTE 一样的“菜单”的文本区域,但只有 2 或 3 个按钮。我怀疑按钮的代码将是相同的。嗯...我要去哪里...好吧试试这个...在这个(StackOverflow)RTE 上有一个“图像”按钮。我想知道如何创建相同的东西(正如我所说,我怀疑所有按钮基本上都是相同的)。 “模态”将允许图像 src/上传或文本区域粘贴 YouTube 链接或 Flickr 链接等(它们将是单独的按钮)我可以创建按钮等并打开/关闭模态等,但是如何将代码放入

Pointers & 中?请提出建议。 - 哦,我根本不需要完整的 RTE,所以“削减 CKeditor”等完全是矫枉过正 在 texarea 中“上传/使用”的唯一 HTML 是 ; 一个 或者(提前考虑)一个

OK here goes - I think a <textarea></textarea> is what to use so please tell me otherwise. I want yo create a series of "buttons" like an RTE which inserts the appropriate code into a textarea. But note this is not a "real RTE". What I would like is a textarea with a "menu" like an RTE but with only 2 or 3 buttons. I suspect the code for the buttons will be the same. Umm... where am I going ... OK try this ... on this (StackOverflow) RTE there is an "image" button. I would like to know how to create the same thing (as I said all buttons I suspect will be basically the same). The "modal" would either allow for an image src/upload or a textarea to paste say a YouTube link or Flickr link etc. (they will be separate buttons) I can create the buttons etc. and have modals open/close etc. but how can you get the code into the <textarea></textarea>

Pointers & suggestions please. - Oh I don't need a full RTE at all so a "cut down CKeditor" etc. is total overkill The only HTML to be "uploaded/used" in the texarea is an <img src=""> an <embed> or maybe (thinking ahead) an <a href="">.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

偏爱你一生 2024-10-22 21:04:59

如果您想在文本区域元素内的实际光标位置插入一段文本。这会对你有所帮助。

注意:正如您所知,文本区域内的所有 html 永远不会被渲染。要执行此操作,您必须使用更复杂的解决方案,例如 RTE 引擎...

尝试以下操作:

function insertAtCursor(myField, myValue) {
    //IE support
    if (document.selection) {
        myField.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
    }
    //MOZILLA/NETSCAPE support
    else if (myField.selectionStart || myField.selectionStart == ‘0′) {
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
        } else {
            myField.value += myValue;
        }
    }

// calling the function:
insertAtCursor(document.formName.fieldName, 'this');

If you want to insert piece of text in the actual cursor position inside a textarea element. This will help you.

Note: Like you know all the html inside the textarea will never be rendered.. To do this you have to use a more complex solution like the RTE engines...

Try this:

function insertAtCursor(myField, myValue) {
    //IE support
    if (document.selection) {
        myField.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
    }
    //MOZILLA/NETSCAPE support
    else if (myField.selectionStart || myField.selectionStart == ‘0′) {
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
        } else {
            myField.value += myValue;
        }
    }

// calling the function:
insertAtCursor(document.formName.fieldName, 'this');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文