这是我的第一篇文章:) 我想选择组合框的选项,并依赖于此选项,您想要打印一个标签或其他标签。例如,如果我选择了选项 - > dni,标签将是DNI:或者如果我选择了选项 - > nombre,则标签将为Nombre:
<div class="campos">
<div class="campo">
<form:label path="buscarPor">Buscar Por:</form:label>
<div>
<select name="buscarPor" id="buscarPor">
<option value="dni">DNI</option>
<option value="nombre">Nombre</option>
<option value="Departamento">Departamento</option>
<option value="Área de Conocimiento">Área de Conocimiento</option>
</select>
</div>
<script type="text/javascript">
function cargarLabel(){
var seleccionado = $(this).val();
if(seleccionado == 'dni'){
$('#seleccion').html('<div class="campo">'+'<form:label path="seleccion">DNI:</form:label>'+
'<div>'+'<form:input path="seleccion"/>'+'<form:errors path="seleccion"/>'+'</div>'+'</div>');
}if(seleccionado == 'nombre'){
$('#seleccion').html('<div class="campo">'+'<form:label path="seleccion">Nombre:</form:label>'+
'<div>'+'<form:input path="seleccion"/>'+'<form:errors path="seleccion"/>'+'</div>'+'</div>');
}
}
$(function () {
$('#buscarPor').change(cargarLabel);
});
</script>
</div>
<div class="campo">
<form:label path="seleccion">??</form:label>
<div>
<form:input path="seleccion"/>
<form:errors path="seleccion"/>
</div>
</div>
答案 0 :(得分:0)
首先,将path
的{{1}}属性更改为其他内容。 Spring标记库生成具有相同值的<form:label path="buscarPor">Buscar Por:</form:label>
属性,该属性将直接与select标记的id
属性冲突。这就是为什么在您当前的代码中,jquery选择id
标记而不是label
标记并将select
事件绑定到它。
尽管如此,还要看一下这个JSFiddle以找到解决这个问题的正确方法。我认为你的方法过于冗长,你可以通过避免所有那些if / else块来帮助自己。