2009-04-06 14 views
2

私は内部にFileUploadコントロールを持つasp.netのフォームを持っています。このコントロールの横には、ファイルをファイルのリストにアップロードするための「アップロード」ボタンがあります。問題は、私は "Submi" tボタンもフォーム全体を送信するために使用していることです。提出時にファイルをアップロードしないでください

閲覧ボタンでファイルを選択して「送信」を押すと、「アップロード」ファイルがアップロードされていないので、私はそれを望んでいません。私はasp.netまたは一般的なHTMLの回答

答えて

2

のために願っています

はのFileUploadコントロールのような音とそれ自身のフォーム内にある必要があり、ボタンをアップロードします。 ASP.NETと1つのサーバー側フォームの制限により、これを行うには通常のHTMLコントロールに頼る必要があります。

アップロードがクリックされていない場合、JavaScriptを使用してFileUploadをクリアすることができます。ブラウザーは(セキュリティ上の理由から)ファイル入力へのアクセスについては気になるかもしれないので、アクセスできない可能性があります。

2

一般的なHTML回答については、ファイルアップロードボタンを別のフォームとは別のフォームの一部にする必要があります。つまり、別のフォームタグ内にカプセル化されています。

ASP.NETの場合、デフォルトでは1ページに1つのフォームしかないため、苦痛が増えます。

しかし、最終的には、デザインを再考することをお勧めします。そのファイルを別のページにアップロードしてみてください。複数のことをするページがある場合は、ユーザー側で混乱を招く恐れがあります。

1

送信ボタンは、フォームのすべての情報を送信します。

FileUploadコントロールを別の形式で外部に配置してみてください。

1

FileUploadコントロールは、別々に送信したい場合は、独自のフォームにする必要があります。 [アップロード]ボタンをクリックすると、フォームの他の部分も送信されます。それはちょうどそれが動作する方法です。

1

私は2つのフォームを分けます。 JavaScriptなどを使用すると、痛みを感じる可能性があります。フォームを分割する際の問題は、元のフォームを失わない方法で行う必要があることです。つまり、ファイルのアップロードに関する他のフォーム情報があると、あなたの悪夢は少し浮かびますが、ファイルのアップロードをフォームの上または下に置くことができます。

<form id="A"> 
    <button name="submit> 
</form> 
<form id="B"> 
    <fileupload> 
</form> 

私のサイトでこの方法を使用していますが、これは非常にうまく動作します。