我目前正在使用標準Dojo前端的Spring Roo項目。我希望我的一個選擇框可以根據從上一個選擇中選擇的選項來動態加載。該.jspx文件看起來像這樣:使用ajax動態填充模型屬性
<form:create id="fc_za_co_itdynamics_survey_domain_Hierarchy" modelAttribute="hierarchy" path="/hierarchys" render="${empty dependencies}" z="uMMWuqMHFrh8u9++PH5WZfwEDGg=">
<field:input field="name" id="c_za_co_itdynamics_survey_domain_Hierarchy_name" min="2" required="true" z="0obmzH2lsnbEXbepG3O0z8Sl0SE="/>
<field:select field="type" id="c_za_co_itdynamics_survey_domain_Hierarchy_type" items="${hierarchytypeenums}" path="hierarchytypeenums" required="true" z="DstTv0Lvaswu9kaBdPwzpxdy9ZQ="/>
<field:select field="parentHierarchy" id="c_za_co_itdynamics_survey_domain_Hierarchy_parentHierarchy" itemValue="id" items="${hierarchys}" path="/hierarchys" z="7w1IXuZxyYUBZ/VIhDvss5HnIUw="/>
</form:create>
所以基本上我想在$ {}層次收集每當類型字段改爲動態地填充parentHierarchy場。
應該叫控制器方法是
@RequestMapping(value = "/getHierarchiesForType", method = RequestMethod.GET)
public @ResponseBody List<Hierarchy> getHierarchiesForType(@RequestParam("type") String typeStr){
......
.....
return hierarchyList;
}
我想使用Ajax調用每當型改爲調用控制器方法。我的代碼如下
dojo.addOnLoad(function() {
var hierarchyType = dijit.byId("_type_id");
dojo.connect(hierarchyType,"onChange",function(){
var url = "${ajax_url}?type=" + hierarchyType;
dojo.xhrGet({
url : url,
handleAs : "??",
preventCache: true,
headers: {
"Content-Type": "??"
},
load : function(data){
......
},
error : function(error) {
console.log("error", error);
}
});
});
});
如何將這種調用的結果映射到$ {hierarchies}屬性?如果是這樣,這是做這件事的最好方法嗎?是否可以動態更改/生成模型屬性?
你能否描述一下? – manetsus
like .... ajax()。done(reponse){select.value = response} ahehehehehe – stackeroverflower