0

xtype: filefield がどのように機能するかは知っていますが、ファイルのアップロードでは通常の ajax メソッドを使用してデータベースにデータを読み書きしないことにも気付きました...

普通にファイルフィールドを設定でき、参照ボタンをクリックすると必要なファイルを選択できます。

this.fp = Ext.create('Ext.form.Panel', {
           scope: this,
           width: 200,
           frame: true,
           title: 'File Upload Form',
           autoHeight: true,
           bodyStyle: 'padding: 10px 10px 0 10px;',
           items: [
           {
               xtype: 'filefield'

           }
           ],
           buttons: [
           { text: 'Upload',
               handler: function () {
                   var form = this.up('form').getForm();
                   if (form.isValid()) {
                       form.submit({
                           url: 'Upload.aspx',
                           waitMsg: 'Uploading your file...',

                           success: function (form, action) {

                               alert("OK:" + action.result.message);

                           },
                           failure: function (form, action) {
                               alert("Error:" + action.result.message);
                           }

                       });
                   }
               }
           }
           ]


       });

アップロードボタンをクリックした後に何が起こるかが問題です...ファイルをサーバー側にアップロードするにはどうすればよいですか...(sql db)... c#を使用して

私はupload.aspx.csでupload.aspxページを作成しようとしましたが、それが機能するかどうかを確認するためにこれを行いました...

public partial class Upload : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

    HttpContext context = HttpContext.Current;


    if (context.Request.Files.Count > 0)
    {

        BinaryReader file = new BinaryReader(context.Request.Files[0].InputStream);

        string line;
        while ((line = file.ReadString()) != null)
        {

            // sql connection?
        }

    }

    // prepare response
    MessageOb result = new MessageOb();

    result.success = true;

    result.message = "Success";


}
}

しかし、私はこのエラーが発生します

Ext.Error: You're trying to decode an invalid JSON String: 

クライアント側のextjsとサーバー側のc#からファイルをsql dbにアップロードする通常の手順を確認できる場所を誰かが文書化しています...または、誰かがそれがどのように行われたかを教えてくれれば本当にありがたいです

4

1 に答える 1

1

この問題は、アップロード フォームの送信からデータを返す方法に関連している可能性があります。Ext.JS では、応答が JSON または XML である必要があります。HTML ドキュメントを返していないことを確認します。

MessageOb がこれを何らかの方法で処理していると思います...多分?

Uncaught Ext.Error: 無効な JSON 文字列をデコードしようとしています: Ext JS と Spring MVC を使用したフォーム送信

于 2013-01-25T20:37:55.987 に答える