2017-11-28 11 views
0

<@spring.formSingleSelect "PersonalInfoBean.district" distMap! ""/>freemarker 매크로ftl 페이지에 선택 옵션을 표시하고 있습니다. distMapHashMap<String, String> 인 곳에는 key(distId), value(distName)과 같은 구역이 들어 있습니다. 그리고 잘 작동합니다.Freemarker Single Select 매크로 jquery로

이제 Ajax와 같은 자바 스크립트를 사용하고 서버 측에서 데이터를 가져 와서/distMap 옵션을 동적으로 (다른 select onchange에서) 변경하고 싶습니다. 나는 SpringMVC를 사용하고있다. ajax 호출로 서버에서 String 또는 json 데이터를 가져올 수 있습니다. 하지만 distMap/options을 바꿀 수는 없습니다.

+1

키를 실현하는 것입니다 ** ** 코드가 실행될 때 ** ** 및 ** - 페이지가 요청되고 렌더링 될 때 서버에서 Freemarker (예 : ** 전에 ** 응답이 브라우저), Javascript (예 : AJAX) 브라우저에서 ** ** 이미 생성 된 ** 응답을받습니다. 당신의'distMap','options' 등은 브라우저에 더 이상 존재하지 않고 생성 된 HTML 코드 만 존재합니다. –

+0

@JozefChocholacek하지만이 매크로'<@ spring.formSingleSelect "PersonalInfoBean.district"distMap! "style = '-'"/>'ftl 페이지에 옵션이있는''태그를 제공하므로 제거/대체 할 수 없습니다 옵션? –

+0

물론 Javascript를 사용하여 select 요소의 옵션을 조작 할 수 있습니다. 서버의 데이터 모델이 아닌 브라우저에서 DOM 객체를 조작한다는 것을 알고 있어야합니다. –

답변

0

하루가 지나면 문제가 발생합니다. <select class="chosen-select"> DOM에 chosen-select을 사용했습니다.

나는에 의해 ....

$(target).empty().append(options).trigger("chosen:updated"); 

업데이트 스크립트를 변경하고 작동합니다.