首页 > 解决方案 > 将图像 src 发布到 MVC 控制器

问题描述

我正在尝试将图像元素的内容发布到我的控制器,以便我可以使用元素将其存储在我的数据库中。

图像 src 格式是这样的:

data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAMUAAAEACAYAAAADarJDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEwAACxMBAJqcGAAAFCxJREFUeJzt3XuUnHV9x/HP9zuzu0kAEUKicqyGGsAbF41ELAm7syG7swmCye5ka22otF6rYqmKp3houng5R9GDtl4OwvFCC6e72QkihMwmZGc3IWop0SqXQ2qUtV6qyQZSkkAu83y//SM7usRNMjPP73l+z8x+X39yTr7PN+R57zO3fQYwxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMYlGvheYLhbctqDp1DNeMhspOosomE2qpxNRSxCghYFmENJQlJRxiAmHVfUQNLUXGuyh5u

这是我的javascript:

$("#submit").click(function () {
    var data = new FormData();
    data.append("image", $('#myImage').attr.src);
    $.ajax({
        url: "/default/upload/",
        type: "POST",
        processData: false,
        contentType: false,
        data: data,
        success: function (response) {
            //code after success
            alert("succes");
        },
        error: function (er) {
            alert(er);
        }
 });

这是我的控制器方法:

[HttpPost]
public void Upload(string image)
{
    Console.WriteLine("Do Something");
}

我的断点被触发,但我的图像字符串只包含undefined

标签: c#jqueryasp.net-corefile-uploadasp.net-core-mvc

解决方案


我认为问题出在这一行:

data.append("image", $('#myImage').attr.src);

解决方案是:

data.append("image", $('#myImage').attr('src'));

// or if you're using jquery version 1.6 or later
data.append("image", $('#myImage').prop('src'));

我的断点被触发,但我的图像字符串只包含undefined

那是因为$('#myImage').attr.src返回undefined. 然后,您将值发送到服务器。当然,image抓住undefined价值。


推荐阅读