1

従来の入力ファイルを JqueryFileUpload ウィジェットに置き換えようとしています。

これが私のコンテキストです:

  • 同じフォームに 1 つ以上のファイルを入力できます。

  • フォームはサーバー側オブジェクトを作成するためのものです (各入力はこのオブジェクトのフィールドであり、各ファイルは作成されたメイン オブジェクトにリンクされた「リソース」オブジェクトです)。これらのオブジェクトはデータベースに保存されます。

  • 最終ユーザーがフォームを送信したら、次のことを行います。

    • 多くの検証を行う (他の入力に対して)
    • すべて問題なければ、ファイルの ajax アップロードをトリガーします。サーバー側ハンドラーは、必要なリソース オブジェクトを作成します。
    • すべてのアップロードが完了したら (ウィジェットのコールバックを使用してそれを知ることができます)、メイン フォーム (アクション フォームはウィジェット ハンドラーではなく、ジョブを実行してメッセージを表示するページです) を送信して、メイン オブジェクトを作成します。 : ここでファイルを送信したくはありませんが、ハンドラーがメイン オブジェクトにリンクするために私に送り返すリソース オブジェクト ID のみを送信します)。

私の問題は、fileUpload をトリガーすると、フォームが送信され、アクション フォーム ページが読み込まれることです。ハンドラーは呼び出されません。

簡単なページでテストを行いました: ウィジェットがフォーム内にない場合、正常に動作します:

<body>
    <div>
        <!-- The file input field used as target for the file upload widget -->
        <input class="fileupload" type="file" name="files[]"/>
    </div>
</body>

しかし、フォームに入れると、フォームは常に送信され、これを防ぐことはできません。

<body>
    <form action="myPage.aspx">
        <!-- The file input field used as target for the file upload widget -->
        <input class="fileupload" type="file" name="files[]"/>
    </form>
</body>

私の質問は次のとおりです。

  • url オプションはフォーム アクションをオーバーライドしませんか?

  • ウィジェットとそれを含むフォームに異なるターゲットを使用できませんか?

  • 1 つのフォームに複数のウィジェットを配置できますか?

4

1 に答える 1

0

参考までに、それは私の側からのかなりばかげた間違いでした。デフォルトの動作が「送信」であるため、フォームは常に送信されました。

于 2013-11-14T08:47:23.200 に答える