我正在使用 Struts 2。我正在尝试使用来自数据库的数据填充组合框(选择),这些值由另一个组合框定义。
当我从第一个组合框中选择一个状态时,第二个必须从数据库加载数据。
这就是我所拥有的:
JSP:
<script type="text/javascript">
function cargarMunicipios(estado){
console.log(estado);
var estado="estado="+estado;
$.getJSON('getMunicipios'),estado,function(data){
$('.result').html(''+data.estados+'');
$.each(data.estados,function(index,value){
var opcion=new Option(value);
var municipio=document.getElementById("municipios");
console.log(value);
municipio.add(opcion)
})
}
}
</script>
...
<s:select list="estados" name="estados" listValue="nombre"
listKey="nombre" label="Estado" id="estados" onchange="cargarMunicipios(this.value)"/>
<s:select list="municipios" name="municipios" listValue="nombre"
listKey="nombre" label="Municipio" id="municipios"
/>
这是对 struts.xml 的操作:
<action name="getMunicipios" class="actions.PrepararMedicosAction" method="loadMunicipios">
<result type="json">
<param name="root">nombre</param>
</result>
</action>
这是动作调用的方法:
public String loadMunicipios(){
municipios=fachada.buscaMunicipios(new Estado(Integer.SIZE, estado, ""));
return SUCCESS;
}
但是,当我选择一个状态时,第二个保管箱没有被填充,在 Web 控制台上,我将 http 请求显示为“Ok”。
我对 Ajax 和 Struts 2 很陌生..请帮助我..谢谢 :)