首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何: redactor.js imageUpload发布额外参数

如何: redactor.js imageUpload发布额外参数
EN

Stack Overflow用户
提问于 2013-12-17 04:51:33
回答 1查看 1.2K关注 0票数 3

我正在使用这个很棒的编辑器,但是我不知道如何用imageUpload和clipboardUpload传递额外的参数。

当用户通过图片时,我希望能够在编辑器中发布额外的参数。

代码语言:javascript
复制
$el.redactor({
    imageUpload: '/WebUpload/Save',
    clipboardUploadUrl: '/WebUpload/Save',
});

http://imperavi.com/redactor/

更新

对于Redacor v10,包含额外的param,只需使用uploadImageFields

代码语言:javascript
复制
$el.redactor({
    imageUpload: '/WebUpload/Save',
    clipboardUploadUrl: '/WebUpload/Save',
    uploadImageFields: {
                id: 1234,
                name: "test123"
            },
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-18 01:04:08

在任何地方都找不到答案,所以我黑了核心redactor.js文件

我加了

代码语言:javascript
复制
$.Redactor.opts = {
        imageUploadExtraParams: {},

,并将post更改为在pasteClipboardUploadMozillapasteClipboardUpload中包括这些参数。

代码语言:javascript
复制
pasteClipboardUploadMozilla: function() {
    var imgs = this.$editor.find('img[data-mozilla-paste-image]');

    $.each(imgs, $.proxy(function(i, s) {

        var $s = $(s);
        var arr = s.src.split(",");
        var data = arr[1]; // raw base64
        var contentType = arr[0].split(";")[0].split(":")[1];

        var postData = {
            contentType: contentType,
            data: data,
        };
        var extraParams = this.opts.imageUploadExtraParams || {};
        for (var propName in extraParams) {
            postData[propName] = extraParams[propName];
        }

        $.post(this.opts.clipboardUploadUrl, postData,

并改变了

代码语言:javascript
复制
pasteClipboardUploadMozilla: function() {
    var imgs = this.$editor.find('img[data-mozilla-paste-image]');

    $.each(imgs, $.proxy(function(i, s) {

        var $s = $(s);
        var arr = s.src.split(",");
        var data = arr[1]; // raw base64
        var contentType = arr[0].split(";")[0].split(":")[1];

        var postData = {
            contentType: contentType,
            data: data,
        };
        var extraParams = this.opts.imageUploadExtraParams || {};
        for (var propName in extraParams) {
            postData[propName] = extraParams[propName];
        }

        $.post(this.opts.clipboardUploadUrl, postData,

现在,我可以通过添加imageUploadExtraParams对象来发布额外的params

代码语言:javascript
复制
$el.redactor({
    imageUpload: '/WebUpload/Save',
    clipboardUploadUrl: '/WebUpload/Save',
    imageUploadExtraParams: {
                id: 1234,
                name: "test123"
            },
});

更新

对于Redacor v10,包含额外的param,只需使用uploadImageFields

代码语言:javascript
复制
$el.redactor({
    imageUpload: '/WebUpload/Save',
    clipboardUploadUrl: '/WebUpload/Save',
    uploadImageFields: {
                id: 1234,
                name: "test123"
            },
});
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20626163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档