0

次のコードは機能していますが、2 つの問題があります。表示される Web ページの大きなフォームの一部です。

<FORM id="my_file_upld_form"
 style="display: inline;"
 METHOD="POST"
 ACTION="/cgi-bin/fileupload_ajax.pl"
    ENCTYPE="multipart/form-data">
    <INPUT TYPE="file" class="ajaxfileupload" NAME="myfile" SIZE="42">
    <input type="hidden" class="ajaxfileupload" name="fileupload" value="ajax_fileupload">
    <input class="ajaxfileupload" type="submit" value="Upload"/>
</FORM>
  1. 「空白」または空(ファイルを選択せず​​、アップロードボタンをクリックしない)でアップロードできます。サーバーで500エラーが発生しています。
  2. より大きな問題は、ファイルがアップロードされた後、ブラウザで新しい空白のページが開かれ、ユーザーは戻るボタンを使用して、これが実行されたページに戻る必要があることです。これは、ajax スクリプトが何かを返すかどうかに関係なく発生します。

直し方?必要に応じて、ページ上のこのコードを置き換えることができます。

4

1 に答える 1

0

Java スクリプト コードがなければ、何が問題なのかを正確に判断するのは困難です。しかし、私はあなたの問題のいくつかを解決する方法を知っていると思います.

  1. バックエンド コードで処理する必要があるクライアントが、不適切なデータを提供するフォームを処理できるとは信じないでください。フォームのクライアント側を検証できますが、常にサーバー側も検証する必要があります。

  2. JavaScript のデフォルト イベントを防止していないため、この問題が発生していると思われます。jqueryではあなたがするでしょう

    $("#my_file_upld_form").submit(function(e){
               e.preventDefault()
    })
    
于 2012-12-10T04:33:37.850 に答える