spring - Dynamically change select tag in a view -
i have following model, major, university , application. when creating new application, want majors list withing application change dynamically based on choose of university field.
i used dojo in code, it's not working..
create application tag
<?xml version="1.0" encoding="utf-8" standalone="no"?> <div xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:field="urn:jsptagdir:/web-inf/tags/form/fields" xmlns:form="urn:jsptagdir:/web-inf/tags/form" xmlns:jsp="http://java.sun.com/jsp/page" xmlns:spring="http://www.springframework.org/tags" version="2.0"> <jsp:directive.page contenttype="text/html;charset=utf-8" /> <jsp:output omit-xml-declaration="yes" /> <spring:url value="/applications/majorsbyuniversity?university=" var="ajax_url" /> <script type="text/javascript"> // dom ready dojo.addonload(function() { var universityid = dijit.byid("_university_id"); //var majors = dijit.byid("_majors_id"); var _fragment_item_ = dojo.byid("_fragment_item_"); dojo.connect(universityid, "onchange", function(evt) { var url = "${ajax_url}?university=" + universityid.get("value"); dojo.xhrget({url : "applications/majorsbyuniversity", timeout : 2000, content : { universityid : dojo.trim(universityid.value)}, load : function(result) { _fragment_item_.innerhtml = "" + result; spring.adddecoration(new spring.elementdecoration({ elementid : '_major_id', widgettype : 'dijit.form.filteringselect', widgetattrs : { hasdownarrow : true } })); } }); }); }); </script> <form:create id="fc_eu_gju_domain_application" modelattribute="application" path="/applications" render="${empty dependencies}" z="ki5rm14j9r0tdsebqiwg5a6bvnw="> <field:input field="status" id="c_eu_gju_domain_application_status" z="v09rnw9oqd32sgv0gnb/tcg4nly=" /> <field:select field="university" id="c_eu_gju_domain_application_university" itemvalue="id" items="${universitys}" path="/universitys" z="o6m+l2bfays9ilr85jmqyqoe3jg=" /> <div id="_fragment_item_"> <field:select field="majors" id="c_eu_gju_domain_application_majors" itemvalue="id" items="${result}" multiple="true" path="/majors" z="stoc0qae7c9u/chqpb1wizsn1n0=" /> </div> </form:create> <form:dependency dependencies="${dependencies}" id="d_eu_gju_domain_application" render="${not empty dependencies}" z="zafd2zq80ivisnmknrmkavlpqqy=" /> </div> application.java
@roojavabean @rootostring @roojpaactiverecord public class application { private string status; @manytoone private university university; @manytomany(cascade = cascadetype.all) private set<major> majors = new hashset<major>(); } applicationcontroller.java
@requestmapping("/applications") @controller @roowebscaffold(path = "applications", formbackingobject = application.class) public class applicationcontroller { public @responsebody list<major> majorsbyuniversity(@requestparam long universityid) { list<major> majors = major.findmajorsbyuniversity(university.finduniversity(universityid)).getresultlist(); return majors; }
Comments
Post a Comment