0

jquery.formsプラグインを使用してasp.netページのWebメソッドにフォームを送信しようとしています(その主な理由は、ファイルも送信する必要があるためです)。

しかし、私はそれを機能させることはできません-それは常にページ全体を返します。

次のクライアント側コードを使用します。

<script type="text/javascript">
    var ajaxUploadOptions = {
        beforeSubmit: UploadFormValidate,  // pre-submit callback 
        success: FormUploadSuccess,  // post-submit callback 
        error: FormUploadFailure,

        url: "Default.aspx/UploadFiles",         // override for form's 'action' attribute 
        type: "POST",        // 'get' or 'post', override for form's 'method' attribute 
        dataType: "json",        // 'xml', 'script', or 'json' (expected server response type) 
        contentType: "application/json; charset=utf-8",            
    };

    function FormUploadSuccess(response, statusText, xhr, jqForm) {
        alert(response);
    };
    function FormUploadFailure(XMLHttpRequest, textStatus, errorThrown) {            
        alert(errorThrown);
    }

    $("form[id $= 'form1']").ajaxForm(ajaxUploadOptions);

  });
</script>

何かを返すためだけのasp.netメソッドのコード:

 [WebMethod]
    public static string UploadFiles()
    {
        return "Test";            
    }

ScriptModuleをweb.configに登録しました(メソッドが使用可能であることを確認するために、通常のjqueryの$ .ajaxを呼び出すだけでも検証されました)。

任意の提案をいただければ幸いです。ありがとう!

4

1 に答える 1

0

ドキュメント/コードを十分に注意深く読んでいないようです。ファイルを送信するときに、フォームプラグインがiframeと通常の送信を使用することがわかりました。

于 2011-01-18T11:33:31.227 に答える