Problema com meu campo de textbox

4 respostas
L

Olá pessoal,

Eu to com um problema que é o seguinte, a minha aplicação é feita em JSF + RichFaces + Ajax.

E ele ta dando cocnflito entre os textbox da minha tela, onde o campo do ModalPanel de Adicionar Novo, pega o campo de Editar do DataTable, como eu faço para o botão saber qual campo pegar os dados, e depois de fazer o evento eu não consigo setar o campo para vazio no final, como eu faço?

segue o trecho de código da minha tela JSF:

<h:form>
<rich:tabPanel style="float:left;">
			<rich:tab label="Quadro de Avisos" switchType="client">
				<h:panelGrid>
				<br/><br/>
					<rich:dataTable id="dtbl_avisos" value="#{AvisoMB.avisos}"
						var="item" align="center" width="600" style="text-align: center;">
						<h:column>
							<f:facet name="header">
								<h:outputText value="Nome" />
							</f:facet>
							<h:outputText value="#{item.nm_login}" />
						</h:column>
						<h:column>
							<f:facet name="header">
								<h:outputText value="Assunto" />
							</f:facet>
							<h:outputLink>
								<h:outputText value="#{item.assunto}" />
							</h:outputLink>
						</h:column>
						<h:column>
							<f:facet name="header">
								<h:outputText value="Editar" />
							</f:facet>
							<a4j:commandButton id="editar_dado" image="/Imagens/alterar.gif"
								href="#" value="Editar"
								onclick="#{rich:component('panelEdita_home')}.show()"
								alt="Editar">
								<f:setPropertyActionListener target="#{AvisoMB.aviso}"
									value="#{item}">
								</f:setPropertyActionListener>
							</a4j:commandButton>
						</h:column>
						<h:column>
							<f:facet name="header">
								<h:outputText value="Excluir" />
							</f:facet>
							<a4j:commandButton id="excluir_dado" image="/Imagens/delete.gif"
								href="#" value="Deletar"
								onclick="#{rich:component('panelDeleta_home')}.show()"
								reRender="lbl_cod_func, lbl_assunto" alt="Deletar">
								<f:setPropertyActionListener target="#{AvisoMB.aviso}"
									value="#{item}"></f:setPropertyActionListener>
							</a4j:commandButton>
						</h:column>
					</rich:dataTable>
					<br />
					<br />
					<br />

					<a4j:commandButton id="btn_adicionar_aviso" href="#"
						style="TEXT-ALIGN: center;" image="/Imagens/adicionar.gif"
						onclick="#{rich:component('panelAdiciona_home')}.show()"
						alt="Adicionar Aviso" reRender="#{LoginMB.login.cod_tipo eq '1'}" />
					<h:outputText value="Adicionar Novo Aviso"
						style="MARGIN-LEFT: 10px;" />
					<rich:modalPanel id="panelAdiciona_home" width="450" height="300"
						left="auto" top="auto">
						<f:facet name="header">Cadastro de Aviso</f:facet>
						<h:graphicImage url="/Imagens/ex_Obrigatorio.gif" />
						<label>Campos Obrigat&oacute;rios</label>
						<hr />
						<br />
						<h:outputText value="Publicador da Mensagem: " />
						<h:selectOneMenu id="cbb_consAvisoAllLogins_cadastro"
							value="#{AvisoMB.login.codigo}"
							style="FONT-FAMILY: 'Times New Roman'; FONT-SIZE: medium;">
							<f:selectItems value="#{LoginMB.allLogins}" />
						</h:selectOneMenu>
						<br />
						<br />
						<h:graphicImage url="/Imagens/ex_Obrigatorio.gif" />
						<h:outputText value="Assunto: " />
						<h:inputText value="#{AvisoMB.aviso.assunto}" />
						<br />
						<br />
						<h:graphicImage url="/Imagens/ex_Obrigatorio.gif" />
						<h:outputText value="Descricao: " />
						<h:inputText value="#{AvisoMB.aviso.descricao}" />
						<br />
						<br />
						<a4j:commandButton id="btn_adicionarAviso_adiciona"
							value="Adicionar" action="#{AvisoMB.adicionaAviso}"
							reRender="dtbl_avisos" />
						<a4j:commandButton id="btn_adicionarAviso_voltar" value="Voltar"
							onclick="#{rich:component('panelAdiciona_home')}.hide()" />
					</rich:modalPanel>

					<rich:modalPanel id="panelDeleta_home" width="320" height="245"
						left="auto" top="auto" style="text-align:center;">
						<f:facet name="header">Excluir</f:facet>
						<br />
						<h:outputText
							value="Os seguintes dados serao deletados da base de dados: " />
						<br />
						<br />
						<br />
						<h:outputText id="lbl_cod_func"
							value="Nome: #{AvisoMB.aviso.cod_func}" />
						<br />
						<h:outputText id="lbl_assunto"
							value="Assunto: #{AvisoMB.aviso.assunto}" />
						<br />
						<br />
						<br />
						<h:outputText value="Voce deseja realmente deleta-los: " />
						<br />
						<br />
						<a4j:commandButton id="btn_OK_excluir" value="SIM"
							action="#{AvisoMB.deletaAviso}" reRender="dtbl_avisos" />
						<a4j:commandButton id="btn_CANCELAR_excluir" value="NAO"
							onclick="#{rich:component('panelDeleta_home')}.hide()" />
					</rich:modalPanel>

					<rich:modalPanel id="panelEdita_home" width="320" height="290"
						left="auto" top="auto" style="text-align:center;">
						<f:facet name="header">Editar</f:facet>
						<br />
						<h:outputText value="Nome:" />
						<h:selectOneMenu id="cbb_consAvisoAllLogins_atualizar"
							value="#{AvisoMB.login.codigo}"
							style="FONT-FAMILY: 'Times New Roman'; FONT-SIZE: medium;">
							<f:selectItems value="#{LoginMB.allLogins}" />
						</h:selectOneMenu>
						<br />
						<br />
						<h:outputText value="Assunto:  " />
						<h:inputText value="#{AvisoMB.aviso.assunto}" />
						<br />
						<br />
						<h:outputText value="Descricao:  " />
						<h:inputText value="#{AvisoMB.aviso.descricao}" />
						<br />
						<br />
						<h:outputText
							value="Voce deseja realmente atualizar esses dados: " />
						<br />
						<br />
						<a4j:commandButton id="btn_OK_editar" value="SIM"
							action="#{AvisoMB.atualizaAviso}" reRender="dtbl_avisos" />
						<a4j:commandButton id="btn_CANCELAR_editar" value="NAO"
							onclick="#{rich:component('panelEdita_home')}.hide()" />
					</rich:modalPanel>

				</h:panelGrid>
			</rich:tab>
		</rich:tabPanel>
	</h:form>

4 Respostas

Hebert_Coelho

Cara não entendi nada do que você falou:

“cocnflito entre os textbox da minha tela”

hein?! :shock:

L

desculpa, é assim eu tenho uma pagina de cadastro, consulta, edição e exclusão.

e tambem tenho 3 textbox dentro da página.

1 textbox para consulta que está solta na pagina, e mais 2 textbox que estão dentro de modalPanel. Qualquer uma dessas 3 textbox não pegam o valor que eu ponho dentro delas, elas pegam de outra textbox, ai eu queria saber se tem algum jeito de resolver esse conflito?

qualquer duvida pode me perguntar que eu tento explicar melhor, e esse é código da minha tela.

Obrigado,

Att,

lymoreira

Hebert_Coelho
  1. Coloque IDs diferente para cada uma
  2. Ligue o value para atributos diferentes.
L

se eu ligar para outros atributos eu vou ficar com muitos atributos na minha classe, e eu to tentando colocar os IDs diferentes, só que não acontece nada, tem algum jeito melhor para fazer isso?

Criado 11 de novembro de 2011
Ultima resposta 12 de nov. de 2011
Respostas 4
Participantes 2