Re:AJuda struts e javascript!

Não uso as tags do struts mas isso talvez funcione:

<script language="JavaScript" src="seu.js"></script>

<html:button onclick=“seu_javascript”> </html:button>

Vc pode CHamar a função JS assim <html:form onsubmit=“return funcao()”></html:form>

se vc declarou a chamada do js como eu falei creio que já funcione.

Qual é o erro?
Vá no menu Ferramentas > Console do JavaScript e passe pra gente o erro que é gerado qdo clica em Confirmar.

Colaca um alert na primeira linha do seu js para ver se ela está sendo chamado mesmo.

alert("carregou js");

Não está faltando o nome do form no seu js?

if (document.id.value == ""){
if (document.forms[0].id.value == ""){

e esse seu document é palavra reservada do javascript, use o forms[0] reconhece automatico o nome do form, e nem precisa de parametro na sua função.

eu faria assim retiraria esse onsubmit=“return validaForm(this);” do seu form e chamaria direto no botão

Assim:

<input type="button" value="Confirmar Inclusao" onclick="validaForm('/SAP/ProcessarInclusaoCargo.do');">

Note que eu estou passando agora a ação como parametro, então sua função deve receber uma ação:

function validaForm(acao) {
   document.forms[0].action=acao;
   ....
}

Eu não uso essas tags do struts, olhe esse exemplo de validação dinâmica com javascript e html puro.

  • Gente eu criei um arquivo javascript(js) dentro do meu projeto e kero xamar ele dentro da minha jsp utilizando a tag do struts …

  • Como eu faço isso … so pra declarar dentro da minha jsp usando a tag do struts ?

  • A kem ajudar agradeço e foi mal por tantas duvidas !

tem como eu xamar pelo <html:form> ???

&lt;%@ page language="java"%&gt;
&lt;%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %&gt;
&lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %&gt;
&lt;%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;
&lt;html:html locale="true"&gt;
  &lt;head&gt;
    	&lt;html:base /&gt;
    	&lt;title&gt;Inclusão de Cargos&lt;/title&gt;
   	&lt;/head&gt;    	 	
    &lt;body&gt;
    &lt;script language="JavaScript" src="jsp/validarFormularioInclusaoCargo.js"&gt;&lt;/script&gt; 	   
     &lt;h2 align="center"&gt; Gerenciar Cargos - Incluir Cargo &lt;/h2&gt;
    	&lt;html:form  action="/ProcessarInclusaoCargo.do" method="post" focus="cod_cargo" onsubmit="return validaForm(this);"&gt;
    		&lt;table &gt;
    	  		&lt;tr&gt;
    	  			&lt;logic:present name="formulario" scope="request"&gt;
    	  				
    	  				&lt;th align="left"&gt;Unidade Gestora:&lt;/th&gt;    	  			
	    	  			&lt;td&gt;&lt;bean:write name="formulario" property="nom_ug" /&gt;&lt;/td&gt;    	  			 
    	  				
    	  				&lt;th  align="left"&gt;Usuário:&lt;/th&gt;    	  			
	    	  			&lt;td&gt;&lt;bean:write name="formulario" property="des_login" /&gt;&lt;/td&gt; 

    	  			&lt;/logic:present&gt;     	  			  				

    	  		&lt;/tr&gt;    	  		    	  			
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Código do Cargo:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="cod_cargo" size="15" maxlength="15"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Tipo do Cargo:&lt;/th&gt;
    	  			&lt;td&gt;			     	  				
    	  				&lt;logic:present name="colecaoTipoCargo" scope="request"&gt;
    	  					&lt;html:select property="des_tipo_cargo"&gt;
    	  						&lt;html:option value=""&gt;-Selecione um Tipo de Cargo-&lt;/html:option&gt;
    	  						&lt;html:optionsCollection name="colecaoTipoCargo" label="des_tipo_cargo" value="des_tipo_cargo" /&gt;   
    	  					 &lt;/html:select&gt; 
    	  				&lt;/logic:present&gt;   	  				
    	  			&lt;/td&gt;    	  			
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Nome do Cargo:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="des_cargo" size="45" maxlength="45"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Nível de Escolaridade:&lt;/th&gt;
    	  			&lt;td&gt;
    	  				&lt;logic:present name="colecaoNivelEscolaridade" scope="request"&gt;
    	  					&lt;html:select property="des_nivel_escolaridade"&gt;
    	  						&lt;html:option value=""&gt;-Selecione um Nível de Escolaridade-&lt;/html:option&gt;
    	  						&lt;html:optionsCollection name="colecaoNivelEscolaridade" label="des_nivel_escolaridade" value="des_nivel_escolaridade" /&gt;    	  					     	  									  				
    	  					&lt;/html:select&gt;   
    	  				&lt;/logic:present&gt; 
    	  			&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Data de Vigência:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="dat_vigencia" size="10" maxlength="10"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Número da Lei Autorizativa:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="num_lei_autorizativa" size="15" maxlength="15"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Data de Publicação da Lei:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="dat_publicacao_lei" size="10" maxlength="10"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  		&lt;tr&gt;
    	  			&lt;th  align="left"&gt;Quantidade de Vagas Fixadas em Lei:&lt;/th&gt;
    	  			&lt;td&gt;&lt;html:text property="qtd_vagas_fixadas_lei" size="5" maxlength="5"/&gt;&lt;/td&gt;
    	  		&lt;/tr&gt; 
    	  	&lt;/table&gt;
    	  	&lt;table align="center" cellpadding="5"&gt;
    	  		&lt;tr&gt;
    	  			&lt;td&gt;&lt;input type="button" value="Confirmar Inclusao" onclick="document.formularioProcessarInclusaoCargo.action='/SAP/ProcessarInclusaoCargo.do';submit()"&gt;&lt;/td&gt;
	    			&lt;td&gt;&lt;input type="button" value="Limpar" onclick=""&gt;&lt;/td&gt; 
	    			&lt;td&gt;
						&lt;html:link href="/SAP/ExibirGerenciarCargo.do"&gt;Voltar&lt;/html:link&gt;
					&lt;/td&gt; 		    	  				
    	  		&lt;/tr&gt;   	  			    	  			
    	  	&lt;/table&gt;
    	&lt;/html:form&gt;
    	    &lt;/body&gt; 
&lt;/html:html&gt;

Eu xamo a função mas ele nao esta informando nada . Setra que tem algo errado no meu codigo aí !?

Exibiu sim . So ke ele nao pega os campos do formulario pra validar !!!

o que deve ser !?


alert("carregou js");

function validaForm(document) {
          
           
          //validar campo cod_cargo
          if (document.id.value == ""){
                     alert("O campo " + document.cod_cargo.name + " deve ser preenchido!");
                     document.id.focus();
                     return false;
           }

         return true;
 }

olha o exemplo aí

  • kara eu colokei o form mas ainda ele nao ta conseguindo validar !!!

mas ele iria validar o formulario desta forma .

  • Valeu pela força e paciencia irmão !

  • AGora funcionou !