나는 ajax 용 jquery 플러그인 (3.0.0)을 사용하여 struts2 (2.2.3) 웹 응용 프로그램을 만들고 있습니다.url에서 최근 선택된 값을 매개 변수로 보내는 방법은 무엇입니까?
나는 2 개의 sj : autocompleter (공급자를위한 첫 번째 제품과 두 번째 제품)를 가진 jsp를 가지고있다. 내가 선택한 공급자에 의해 제품을 필터링해야합니다. 이 특정 응용 프로그램에서 두 번째 컬렉션에 대한 자동 완성 기능이 있어야합니다.
내가 원하는 것은 첫 번째 자동 완성기에서 선택한 값을 매개 변수로 url로 보내서 두 번째 자동 완성기 필터링에 해당 선택 항목을 사용할 수 있도록하는 것입니다. 내 JSP 코드의
부 :
<s:url id="url_products" action="myAction" method="showProducts">
<s:param name="providerSelected" value="%{purchase.provider.id}"></s:param>
</s:url>
<sj:autocompleter
id="purchaseProviderId"
name="purchaseProvider"
value="%{purchaseProvider}"
onCompleteTopics="providerChanged"
cssClass="product"
href="%{url_providers}"
/>
<sj:autocompleter
id="productId"
name="productDescription"
value="%{productDescription}"
listenTopics="providerChanged"
href="%{url_products}"
/>
제가하는 데 문제는하다 "% {purchase.provider.id}"는 url_products를 보내기 전에 정확히 선택 뭔가 내가 통해 값을 보낼 때 url 값은 최신 선택 완료에서 업데이트되지 않습니다. 제가 생각하기에이 값은 세션의 일부이며 공급자를 위해 수행 된 새로운 선택이 아직 액션에 제출되지 않았기 때문에 "% {purchase.provider.id}"는 세션의 값을 가리키고 있습니다 인식.
질문 : "purchaseProviderId"autocompleter에서 최근에 선택한 값을 URL을 매개 변수로 보내려면 어떻게해야합니까?
미리 감사드립니다.
답장을 보내 주셔서 감사합니다. 당신 말이 맞았어요, 나는 두 번째 자동 완성기에 formIds를 추가했고 "purchase.provider.id"가 액션으로 보내졌습니다. 유일한 것은 제공자의 ID가 최근에 선택되지 않았으며, 대신이 구매를 위해 이미 선택/저장 된 제공자의 ID이며 새 ID를 선택해야합니다. 이 경우에는 실제로 자동 완성 구성 요소를 사용해야합니다.새 공급자 ID가 선택한 작업으로 보내는 다른 제안 사항은 무엇입니까? 자바 스크립트에서 그 id를 가져 와서 url의 param으로 보낼 수 있습니까? – clanmilano
첫 번째 선택 목록에'onChangeTopics = "providerChanged"를 추가하십시오. – nmc