JSON のパラメーターを使用してフォームをサーバーに送信しようとしています。
form.submit({
url:'JSONSaveEntry',
method:'POST'
});
ただし、すべてを form-www-urlencoded として送信します。
isFile
フィールドが に設定されていないことを既に確認しましたtrue
(ただし、 として送信されますmultipart-formdata
)。それstandardSubmit
はfalse
です。
私も使ってみました
Ext.Ajax.request({
url:'JSONSaveEntry',
method:'POST',
params:form.getValues()
});
と
Ext.Ajax.request({
url:'JSONSaveEntry',
method:'POST',
params:Ext.encode(form.getValues())
});
form-www-urlencoded
ドキュメントには「フォーム値の Ajax ベースの送信を実行する (standardSubmit が false の場合)」と明記されていますが、すべての送信は として行われます。しかし、ファイル フィールドがフォームにあるときはいつでも、フォームはマルチパートとして送信されるため、この文は既に間違っていることが証明されています。
それで、JSONとして送信されたフォームを取得する方法を知っている人はいますか?
可能性 2: 経由でモデルを送信すると機能することはわかっていmodel.save()
ますが、その場でフォームからモデルを作成するにはどうすればよいでしょうか (フィールドを 2 回ハードコーディングする必要はありません)。