2

<input type="file" capture="camera"使用 JQM、Ajax、Asp.net [WebMethod]从相机捕获上传图片时出现问题。

我将在下面发布一些代码:

脚本:

$('#uploadpicture').click(function() {
        var fd = new FormData();
        fd.append('photo', $('#filefromcam')[0].files[0]);
        $.ajax({
            url: "Butikk.aspx/UploadPicture",
            type: "POST",
            data: fd,
            processData: false,  // tell jQuery not to process the data
            contentType: false,   // tell jQuery not to set contentType
            success: function (data) {
                var result = data.d;
                console.log(data.d);
            },
            error: function (xhr, errorType, exception) { //Triggered if an error communicating with server  
                var errorMessage = exception || xhr.statusText; 
                alert("Feilmelding: " + errorMessage);
            }
        });
    });

HTML:

<td>
<input type="file" id="filefromcam" capture="camera" accept="image/*" data-mini="true">
</td>
<td>
<a data-role="button" id="uploadpicture" data-mini="true">Last opp</a>
</td>

母版页中的表格标签:

<form id="form" runat="server" enctype="multipart/form-data">

WEB方法后端

[WebMethod]
public static void UploadPicture(object fd)
{
   var test = "test";  // just to see if debug mode occurs for breakpoint.
}

问题是,我总是得到 POST localhost.../UploadPicture 200 OK 63MS 所以它似乎工作正常,但我从来没有到达我在 [WebMethod] 中设置的断点。

我也尝试过这样的 XHR:

var file = input.files[0];
var form = new FormData();
xhr = new XMLHttpRequest();
form.append('image', file);
xhr.open('post', 'TestTest(dot)aspx/UploadPicture', true);  
xhr.send(form);

这也应该是一个解决方案,但无论我做什么或改变什么,我都无法得到任何其他结果。

4

0 回答 0