2012-12-19 13 views
13

Spring MVC için yeni. Ben $("#formid").submit(); kullanarak bu sunabileceğini olduğum bir böyle formu,ajax (jquery) içinde spring formunu modelAttribute ile gönderme

<form:form acion="/myaction.htm" method="post" modelAttribute="myForm" id="formid"> ve json

public @ResponseBody ResultObject doPost(@ModelAttribute("myForm") MyForm myForm){ sysout("myform.input"); }

döndüren bir denetleyicisi var ve benim ModelAttribute UI değerleri alarak iyi çalışıyor.

Soruma göre bu formu jquery ajax biçiminde nasıl gönderebilirim? gönderirken I

$.ajax({ 
type:"post", 
url:"/myaction.htm", 
async: false, 
dataType: "json", 
success: function(){ 
alert("success"); 
} 

}); 

form gönderildiğinde ancak ModelAttribute değerleri null, nasıl ModelAttribute nesnesi (form kullanarak nesne) içermesi için güvenilir?

cevap

2

senin ModelAttributes sen server.Form verilerinde hiçbir params geçmezken olarak ajax sonrası isteği göndermek için sunucuya

$.post('myaction.htm', $('#formid').serialize()) gönderilecek zorundadır doldurulmaz.

52

Verileri kaydetmeniz gerekiyor. Genelde yaptığım yol aşağıdakileri kullanmaktır.

+0

şimdi çalışıyor, teşekkürler! – Rony

+9

@Rony Sizin için işe yararsa kabul edildiğini işaretlemeyi unutmayın. –

+0

CSRF ile SpringSecurity kullanıyorum ve bunu alıyorum: Tanınmayan simge '_csrf': bekliyordu ('true', 'false' veya 'null'). Buna bir çözüm var mı? – zygimantus