Dojo 1.8 の xhr 呼び出しを介して Dojo フォームを投稿することはできませんが、非推奨のメソッド dojo.xhrPost を介して行われています。私が使用したコードフラグメントをご覧ください。
これは、Dojo ajax 呼び出しの jsp の一部です。
require(["dojo/request/xhr"],function(xhr){
xhr('http://localhost:8080/myApp/call',{
data: 'callerName',
method:"POST",
load: function(data, ioargs) {
alert("The message is: " + ioargs.xhr.status);
},
error: function(error){
alert("Returned: " + error);
}
});
});
<form data-dojo-type="dijit/form/Form" name="callerName" id="callerName">
...here are dojo input types
</form>
以下はスプリングコントローラー
@RequestMapping(value="/call",method=RequestMethod.POST)
public ModelAndView saveData3(HttpServletRequest req, @ModelAttribute Caller caller){}
ここでは、フォームから呼び出し元のモデル属性への値を取得していません。しかし、呼び出しが行われています。以下の非推奨の呼び出しを行う場合、この ajax 呼び出しの代わりに、値がバインドされます。
dojo.xhrPost({
url: 'http://localhost:8080/myApp/call',
form: 'callerName',
load: function(response) {
}
引数 'data' の代わりに 1.8 での最新の呼び出しについては、'form' で試してみましたが、まだ発生していません。この問題は何ですか?