これは本当に簡単な修正だと思いますが、困惑しています。私は一日中探し回っていますが、私のコードは実際の例のコードと一致しているようです。私は Struts+SpringMVC+Hibernate を使用しており、すべての dojo タグを jQuery タグに置き換えようとしています。jQuery ドロップダウンは、関連するアクションを呼び出していません。
関連するコードは次のとおりです。
Struts.xml
<action name="getListOfCities" class="cityActions">
<result type="json">
<param name="root">cities</param>
</result>
</action>
Page.jsp
<s:url id="cityList" action="getListOfCities"/>
<sj:autocompleter name="cities" href="%{cityList}" list="cities" selectBox="true"/>
CityAction.java
public class CityActions implements ModelDriven<CityVO> {
CityService cityService;
private Map<String, String> cities = new HashMap<String, String>();
CityVO city = new CityVO();
public void setCityService(CityService cityService) {
this.cityService = cityService;
}
public CityVO getModel(){
return city;
}
public String execute() {
return Action.SUCCESS;
}
public String addCity(){
try{
cityService.addCity(city);
return "SUCCESS";}
catch(Exception e){
return "ERROR";
}catch(Throwable t){
return "ERROR";
}
}
public Map<String, String> getCities() {
List<CityVO> cityList = cityService.listCities();
Iterator<CityVO> iterator = cityList.iterator();
while (iterator.hasNext()) {
CityVO fac = iterator.next();
cities.put(fac.getCityName(), Integer.toString(fac.getCityId()));
}
return cities;
}
ドロップダウン メニューは表示されますが、何も入力されていません。これは私が以前に持っていたもので、うまくいきました:
<s:url id="cityList" action="getListOfCities" />
<sx:autocompleter href="%{cityList}" name="cities" keyValue="0" value="---- SELECT ONE-----"/>
誰にもこれに対する解決策がありますか?追加することを確認しました
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
そして頭の中:
<sj:head jqueryui="true"/>
ありがとう。