0

在 ckeditor 中插入图像时,url 输出http://site.com/image/data/004 - Copy.jpg不是http://site.com/image/data/004%20-%20Copy.jpg

请记住,图像可以在网站上正确显示,但是当我想发送电子邮件时,电子邮件客户端(例如 gmail)会将 url 文件名编码为http://site.com/image/data/004+-+Copy.jpg并返回 404。

我可以用 rawurlencode() 解决这个问题,但我似乎找不到在哪里添加它。有任何想法吗? 在此处输入图像描述

编辑: 我找到了编辑位置(filemanager.tpl)

window.opener.CKEDITOR.tools.callFunction(<?php echo $fckeditor; ?>, '<?php echo $directory; ?>' + $(this).find('input[name=\'image\']').attr('value'));

如何$(this).find('input[name=\'image\']').attr('value')使用 rawurlencode 进行编码?

4

1 回答 1

3

显然,您不能rawurlencode直接使用 PHP,但您可以通过实现自己的 JavaScript 版本的函数来即兴发挥......

function rawurlencode (str) {
    return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').
    replace(/\)/g, '%29').replace(/\*/g, '%2A');
}

和...

rawurlencode($(this).find('input[name=\'image\']').attr('value'));
于 2012-12-19T09:22:37.297 回答