0

画像の URL を返すコントローラーがあります。imageurl.AbsoluteUri はファイル パスであり、返されます。返される "myserver.windows.net/myimagename" と言ってみましょう (fineUploader を使用して) モデルにその値を取得するにはどうすればよいですか? これは、イメージ コントローラーで fileUpload メソッドを呼び出すために呼び出している jquery です。

function createUploader() {
            var uploader = new qq.FineUploader({
                element: $('#fine-uploader')[0],
                debug:true,
                text: {
                    uploadButton: 'SELECT FILE'
                },
                request: {
                    endpoint: '@Url.Action("UploadFile", "Image", new { qqfile = "Image" })'
                },
                callbacks: {
                onComplete: function(id, fileName, responseJSON) {
                    if (responseJSON.success == false && responseJSON.limitReached) {
                        $.confirm({
                            '@Model.Image':'imageurl'
                        });
                    } else {
                        addImage(responseJSON.idImage, responseJSON.imageType, responseJSON.showDescriptionOptions);
                    }
                }
            },
            });

そしてこれがそれを返すもので、imageurlは実際には「myserver.windows.net/myimagename」です

  return Json(new { success = true, imageurl = imageurl.AbsoluteUri }, "text/html");

onComplete セクションと関係があると思いましたが、実際に imageurl 値を取得する方法がわかりません

4

1 に答える 1

0

クライアント側の JavaScript データを MVC モデルに保存することはできません。MVC モデルはリクエスト時にサーバー上で実行され、ブラウザーはそれらと対話する方法を知りません。

jQuery を使用してページの適切な部分を更新し、自分で応答を処理する必要があります。たとえば、レスポンスで画像を更新する場合:

$('#response-image').attr('src', responseJSON.imageurl);

<img id="response-image">

コメントに基づいて編集します。

jquery の .text() を使用して要素のテキストを設定できます。

$('#response-url').text(responseJSON.imageurl);

そして、ページのどこか:(divは無関係で、SOフォーマットのために追加されただけです)

<div>
    The image url is <span id="response-url"></span>
</div>
于 2012-11-30T20:17:36.047 に答える