很抱歉,如果这已被要求在其他地方,但我都看了看周围,发现了一些答案,但没有一个完整的例子,我仍然在这一个疑问。
所以,我从我的春节控制器添加Autopopulating列表,我的jsp,我想我的JavaScript / jQuery函数里面的名单上添加项目。 可能吗?
我想下面的代码来测试功能,但它没有工作(列表中的元素没有在生成的html都显示出来)。 所以林不能确定,如果林搞乱与javascrit /春/ JSP语法,或者如果它仅仅是不可能的。
下面是代码:
控制器代码:
@RequestMapping(value="/create_custobject.html",method = RequestMethod.GET)
public ModelAndView showCreateCustObjectPage() {
Map<String, Object> model = new HashMap<String, Object>();
CreateObjectForm form = new CreateObjectForm();
model.put("createObjectform", form);
return new ModelAndView("create_custobject", model) ;
}
表单代码:
public class CreateObjectForm {
private AutoPopulatingList<Criteria> ruleArray = new AutoPopulatingList<Criteria>(Criteria.class);
public AutoPopulatingList<Criteria> getRuleArray() {
return ruleArray;
}
public void setRuleArray(AutoPopulatingList<Criteria> ruleArray) {
this.ruleArray = ruleArray;
}
public CreateObjectForm() {}
}
标准代码:
public class Criteria{
String attribute;
String operator;
//... constructor + getters and setters
}
的JavaScript / jQuery代码(在同一页作为JSP一个上):
<script type="text/javascript">
$(document).ready(function(){
//startup functionality
var i = 0;
document.getElementById("addCriteria").onclick = function() {
$("#msgid").html("${ruleArray[i].attribute}");
${ruleArray[i].attribute} = $('#attributeValue').val();
${ruleArray[i].operator} = $('#operatorValue').val();
i++;
}
}