我有以下ajax。只要指定的输入元素发生变化,函数就会尝试重新计算总数。Spring MVC和Ajax验证
$('[name^=quantities]').change(function() {
calculate();
});
function collectFormData(fields) {
var data = {};
for (var i = 0; i < fields.length; i++) {
var $item = $(fields[i]);
data[$item.attr('name')] = $item.val();
}
return data;
}
function calculate(){
var $form = $('#purchase-form');
var $inputs = $form.find('[name]');
var data = collectFormData($inputs);
$.ajax({
url: '${validateUrl}',
type: 'POST',
data: data,
contentType: 'application/json; charset=utf-8',
success: function (response) {
alert(response.status);
},
error: function() {
alert("error");
}
});
}
HTML:
...
...
我在春天处理
@RequestMapping(value = "/purchaseValidation.json", method = RequestMethod.POST)
@ResponseBody
public ValidationResponse validate(
@ModelAttribute(value = "form") @Valid PurchaseForm form,
BindingResult result, Locale locale) {
ValidationResponse res = new ValidationResponse();
// value of form.getQuantities.get(0) == 0
// value of form.getQuantities.get(1) == 0
return res;
}
PurchaseForm.java
public class PurchaseForm {
private List itemList;
private List quantities;
private boolean starterPackageRequired;
public PurchaseForm() {
}
...
...
}
在我的AJAX文章中,我可以看到量的值是2和0,但在我的spri ng处理程序的两个值都是0.任何可能导致这种情况的指针?
2013-03-19
abiieez