我有一个ajax调用,该调用返回了一个JSON对象(数据)。 下面的Ajax和JSP代码
<script type="text/javascript" language="JavaScript">
//AJAX Start
$.ajax({
type: "GET",
contentType : "application/json",
url: "getInfo.do",
data: "&pNum=" + pNum,
dataType : 'json',
async: false,
success: function(data){
if(data != null)
alert(data.pTaxId);
document.getElementById("pTaxId").value = data.pTaxId;
else{
resetFields();
}
},
error: function(e){
alert("Error..."+JSON.stringify(e));
}
});
</script>
<form:form action="addSubmit.do" commandName="pTax">
<c:set var="pageNo" value="0" />
<input type="hidden" id="pTaxId" value="" />
<form:hidden path="pTaxId" value=""/>
////
...
///
</form:form>
pTax是带有pTaxId字段的POJO。尝试在javascript中像上面一样在输入和表单隐藏中为pTaxId设置值,但是我得到的是空值。 但是alert(data.pTaxId)给我的值是'5268'...有什么建议吗?
按如下方式从Java代码访问值:
@RequestMapping("/addSubmit.do")
public String addSubmit(HttpServletRequest request, @ModelAttribute("pTax") PerTax perTax, BindingResult result) {
System.out.println("Value of pTaxId ::: "+perTax.getPTaxId()+":::");
////
...///
}
输出:pTaxId的值::::::