看起来我没有让我的Spring方法与Jquery脚本一起工作。这是方法
@RequestMapping(value="vsfill.html", params = "accountId", method = RequestMethod.GET)
public @ResponseBody String getAccount(@RequestParam("accountId") String accountId) throws JSONException {
logger.debug("getAccount() accountId "+accountId);
String json = null;
String _json = null;
User user = idmClient.getUser(accountId);
HashMap hm = new HashMap();
hm.put("accoountId", user.getAccountId());
//hm.put("givenName", user.getGivenName());
hm.put("callingName", user.getCallingName());
hm.put("email", user.getEmail());
json = JsonUtils.javaToStr(hm);
return json;
}
}
脚本
$("#person").blur(function() {
var accountId =$('#person').val();
$.ajax({
type: 'GET',
url: 'vsfill.html?accountId='+accountId,
dataType: 'json',
data: (accountId),
success: function(data) {
if (data!=null&&data!='') {
$('#responsableName').val(data.callingName);
$('#resposableMail').val(data.Mail);
}
}});
});
我是新手。
答案 0 :(得分:0)
替换
url: 'vsfill.html?accountId='+accountId,
dataType: 'json',
data: (accountId),
与
url: 'vsfill.html',
dataType: 'json',
data: {accountId: accountId},
答案 1 :(得分:0)
.val()无法使用
标签......他们使用输入
仅元素。所以我认为
$('#responsableName').val(data.callingName);
是错的。
你应该尝试:
$('#responsableName').text(data.callingName);
源: [http://api.jquery.com/text/] [1]
编辑:尝试以下代码:
$("#person").blur(function() {
var accountId =$('#person').val();
$.ajax({
type: 'GET',
url: 'vsfill.html',
dataType: 'json',
data: {accountId:accountId},
success: function(data)
{
if (data!=null && data!='')
{
$('#responsableName').text(data.callingName);
$('#resposableMail').text(data.email);
}
}
});
});
最有可能存在一些语法错误(例如额外的大括号),但代码不起作用。