Problema JSF + JS

3 respostas
kabafano

Glera, to com um problemao aqui ;/
seguinte tenho duas h:selectManyListbox
e dois botões de < e >( passar de um lado para outro elementos de uma h:selectManyListbox
blz.
qndo eu clico em um desses botões, via js eu faço uma chamada que adiciona via js o elemento de um h:selectManyListbox no outro h:selectManyListbox.
porem qndo eu clico no botão de confirmar as alterações as alterações não aparecem…

Mesmo comportamento ocorre em um outro combo de cidade estado.Onde visualmente aparecem todas as cidades mas qndo clico em confirmar o campo da cidade diz q não existe o item selecionado, como se o item não tivesse sido add na combo.
como resolver isso?
abraços

3 Respostas

drsmachado

Como está teu js?
Posta o código js e os trechos onde está com problemas

kabafano

Opa!!
parte do código HTML esta:

<tr>
								<td width="25%">
									<h:selectManyListbox  id="userAllPrograms" binding="#{userBacking.allPrograms}" >
										<f:selectItems value="#{userBacking.allProgramsList}"/>
									</h:selectManyListbox>	
								</td>
								<td align="center" width="10%">
									<div>
										<h:commandButton value=">" onclick="addProgram();return false;" >
										</h:commandButton>
										<br/>
										<h:commandButton value="<" onclick="removeProgram();return false;" >
										</h:commandButton>
									</div>
								</td>
								<td width="25%">
									<h:selectManyListbox  id="userSelectedPrograms" binding="#{userBacking.programType}">
									</h:selectManyListbox>	
								</td>
							</tr>
						</table>
						<div style="float: right;">
							<h:commandButton value="#{msgs['modal.register.confirmation']}" action="#{userBacking.registerUser}"/> &nbsp;<h:commandButton value="#{msgs['modal.register.cancel']}" />
						</div>

o código JS está:

function addProgram(){
	$("#registerForm\\:userAllPrograms option:selected").each(function () {
		 $("#registerForm\\:userSelectedPrograms").append(
			        $("<option></option>").val($(this).val()).html($(this).text()));
	});
	
	$("#registerForm\\:userAllPrograms option:selected").each(function () {
		$(this).remove();
	});
}
function removeProgram(){
	$("#registerForm\\:userSelectedPrograms option:selected").each(function () {
		 $("#registerForm\\:userAllPrograms").append(
			        $("<option></option>").val($(this).val()).html($(this).text()));
	});
	
	$("#registerForm\\:userSelectedPrograms option:selected").each(function () {
		$(this).remove();
	});
}
kabafano

O problema ocorre quando clico no botão para salvar, ele não está pegando os valores alterados do h:selectMany… ;/

Criado 4 de fevereiro de 2011
Ultima resposta 5 de fev. de 2011
Respostas 3
Participantes 2