TinyMCE:如何在前面添加“http://”到 URL(如果不存在)

发布于 2024-11-08 04:27:20 字数 62 浏览 0 评论 0原文

如果在 TinyMCE 中使用插入链接添加 URL 时不存在,是否可以在 URL 前面添加“http://”?

Is there way to prepend 'http://' to URL if it's not there while adding URL with Insert Link in TinyMCE?

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

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

发布评论

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

评论(5

不即不离 2024-11-15 04:27:20

为此,您需要复制tinymce插入链接插件,重命名它,向其中添加必要的代码(“http”-添加)并将其用作您自己的插件。

编辑:好的,这是一个示例(使用 jQuery):

// You might need to change the event and/or tha handling 
// but this should give you a guess at what needs to be done
setup : function(ed)
{
       ed.onClick.add(function(ed, evt)
       {
           $(ed.getBody()).find('a').each(function(index, element){
               if (!$(this).attr('href').search('http')){
                    $(this).attr('href', 'http://' + $(this).attr('href'));
               }
           });
       });
},

For that you would need to copy the tinymce Insert Link plugin, rename it, add the necessary code to it (the "http"-Adding) and use it as your own plugin.

EDIT: Ok, here is an example (using jQuery):

// You might need to change the event and/or tha handling 
// but this should give you a guess at what needs to be done
setup : function(ed)
{
       ed.onClick.add(function(ed, evt)
       {
           $(ed.getBody()).find('a').each(function(index, element){
               if (!$(this).attr('href').search('http')){
                    $(this).attr('href', 'http://' + $(this).attr('href'));
               }
           });
       });
},
心如荒岛 2024-11-15 04:27:20

我在 4.x 版本中也遇到了这个问题。我发现 link 插件支持提示用户添加协议的选项。但不幸的是,文档中没有提到它,它只记录在变更日志中,所以我想这是广泛未知的。

$('textarea').tinymce({
    ...
    link_assume_external_targets: true
    ...
});

在此处输入图像描述

I was facing this problem as well with version 4.x. I discovered that the link plugin supports an option that prompts the user to add the protocol. But unfortunately it's not mentioned in the documentation, it's only documented in the changelog so I would imagine this is widely unknown.

$('textarea').tinymce({
    ...
    link_assume_external_targets: true
    ...
});

enter image description here

凉城 2024-11-15 04:27:20

我通过在tinymce insertLink.aspx 文件中使用“http://”预填充字段值来实现此目的。

<ui:PropertyPanel runat="server" Text="Url">
   <input type="hidden" id="localUrl" name="localUrl" onchange="" />
   <input id="href" name="href" type="text" style="width: 220px;" value="http://" onchange="document.getElementById('localUrl').value = ''; 
selectByValue(this.form,'linklisthref',this.value);" />
</ui:PropertyPanel>

值=“http://”

I have achieved this by prepopulating the field value with 'http://' in the tinymce insertLink.aspx file.

<ui:PropertyPanel runat="server" Text="Url">
   <input type="hidden" id="localUrl" name="localUrl" onchange="" />
   <input id="href" name="href" type="text" style="width: 220px;" value="http://" onchange="document.getElementById('localUrl').value = ''; 
selectByValue(this.form,'linklisthref',this.value);" />
</ui:PropertyPanel>

value="http://"

忱杏 2024-11-15 04:27:20

在 link.js 中,找到“if (!f.href.value)”,

添加一个“else”子句

    else {
        var href = f.href.value;
        if (href.indexOf('http') == -1) {
            href = 'http://' + href;
            f.href.value = href;
        }
    }

** 请记住,您已经这样做了,以防您更新 tinymce 组件!

in link.js, find "if (!f.href.value)"

add an "else" clause

    else {
        var href = f.href.value;
        if (href.indexOf('http') == -1) {
            href = 'http://' + href;
            f.href.value = href;
        }
    }

** remember that you did that in case you update your tinymce component!

初吻给了烟 2024-11-15 04:27:20

我刚刚看到这个,它可能会有所帮助,版本 5:

link_assume_external_targets:[选项];

您可以使用选项“https”或“http”,并且它不应提示

https://www.tiny.cloud/docs/plugins/opensource/link/#link_assume_external_targets

i just saw this and it might help, version 5:

link_assume_external_targets: [option];

you can use the option "https" or "http" and it should not prompt

https://www.tiny.cloud/docs/plugins/opensource/link/#link_assume_external_targets

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