ファイルfileのformフォーム取得ファイルを含むStreamストリームを、net c菗提出する。
2247 ワード
1.フロントのコード
IDのあるformを書きたいですが、runal="server"属性はありません。一つのページでは、この属性のフォームは一つしかないからです。
もう一つはnameのiframeがあります。そのスタイルを非表示にします。つまりdisplayはnoneです。iframeを使うメリットは、このフォームを提出することです。
ページを更新しません。この見えないiframeを更新します。
フォームのtargetをiframeのname値に設定し、フォームのactionをフォームに提出する処理プログラムに設定します。
この処理プログラムでは、フォーム内のname属性を持つコントロールの値をすべて受信します。ファイルを含みます。
<input type=「file」name=「uploadfile」id=「uploadfile」/>
WebFormのファイルをサーバーにアップロードするには.net自身のFileUpLoadコントロールは使えません。権限の問題があるため、解析できないようです。したがって、本明細書で使用されるフォーム形式のpostを使って、受信側でC〓コードを使用する。 var file=context.Request.Files[0] var stream=file.InputStream;を選択します。
2.一般的な処理プログラムコード、つまり上のformで提出されたaction端の処理コードです。
calback()はiframeがいるページで定義されているjs方法です。前にparentを使う時は、
現在提出されているのはiframeで、parentを使ってページオブジェクトを取得できます。iframeはparentまたはtopを通じて親ページを見つけることができます。
親ページのjsスクリプトを実行できます。
IDのあるformを書きたいですが、runal="server"属性はありません。一つのページでは、この属性のフォームは一つしかないからです。
もう一つはnameのiframeがあります。そのスタイルを非表示にします。つまりdisplayはnoneです。iframeを使うメリットは、このフォームを提出することです。
ページを更新しません。この見えないiframeを更新します。
フォームのtargetをiframeのname値に設定し、フォームのactionをフォームに提出する処理プログラムに設定します。
この処理プログラムでは、フォーム内のname属性を持つコントロールの値をすべて受信します。ファイルを含みます。
<input type=「file」name=「uploadfile」id=「uploadfile」/>
WebFormのファイルをサーバーにアップロードするには.net自身のFileUpLoadコントロールは使えません。権限の問題があるため、解析できないようです。したがって、本明細書で使用されるフォーム形式のpostを使って、受信側でC〓コードを使用する。 var file=context.Request.Files[0] var stream=file.InputStream;を選択します。
<form id="fileInfo" enctype="multipart/form-data" target="screct_frame" method="POST" action="../../Handlers/needsPlanCreateHandler.ashx?sign=readExcel">
<input type="file" name="uploadfile" id="uploadfile" />
<button class="btn btn-default" type="submit" > </button>
</form>
<iframe name="screct_frame" style="display: none;"></iframe>
2.一般的な処理プログラムコード、つまり上のformで提出されたaction端の処理コードです。
private void ReadExcel(HttpContext context)
{
context.Response.ContentType = "text/html";
try
{
var file = context.Request.Files[0];
if (file.FileName == "")
{
context.Response.Write("<script>parent.callback(' ');</script>");
}
var stream = file.InputStream;
//
}
catch (Exception ex)
{
context.Response.Write("<script>parent.callback(" + ex.ToString() + ");</script>");
}
}
は、上記のparent.calback()という方法を説明しています。calback()はiframeがいるページで定義されているjs方法です。前にparentを使う時は、
現在提出されているのはiframeで、parentを使ってページオブジェクトを取得できます。iframeはparentまたはtopを通じて親ページを見つけることができます。
親ページのjsスクリプトを実行できます。