Chupando bala de novo?! Cadê o nome do formulário, sem o nome ele não tem como descobrir o que você está chamando.
há duas maeira de chamar um elemento em JS
//assim ele pega form com o nome 'formCliente'
document.formCliente
ou
//assim ele pega o primeiro form do documento
document.forms[0]
Não precisa colocar um name na tag html:form.
No javascript você vai chamar o forma que corresponde a sua action ProcessarInclusaoCliente.do. Por exemplo, se o nome do seu form for ProcessarInclusaoClienteForm, no javascript você deve colocar:
document.ProcessarInclusaoClienteForm
então tente usar da maneira que eu te disse
document.forms[0]
P.S…: Escreve direito porque esse jeito que tu escreve é ilegivel, parece chat do Terra
[quote=Walter Jardim]Não precisa colocar um name na tag html:form.
No javascript você vai chamar o forma que corresponde a sua action ProcessarInclusaoCliente.do. Por exemplo, se o nome do seu form for ProcessarInclusaoClienteForm, no javascript você deve colocar:
document.ProcessarInclusaoClienteForm
Mas isso não vai depender de como está configurado no struts-config, pelo que eu vi, ele pega o nome do form que está lá configurado!
Você tem que ver como está configurado o arquivo struts-config.xml ou o arquivo que contém a declaração de todos os forms com suas actions.
Exemplo:
No exemplo acima a action navegacaoTeste (que será chamada no jsp) gerará um form de nome NavegacaoForm e é esse nome que você deverá utilizar na função javascript.
Confirme aí as configurações do seu xml.
Só para constar, o nome do teu form vai ser este:
formularioProcessarInclusaoCliente
Pelo que eu vi, sua função tem que ficar assim:
[code]function validarForm() {
d = document. formularioProcessarInclusaoCliente;
if (d.nome.value == ""){
alert("O campo nome deve ser preenchido!");
document.nome.focus();
return ;
}
}[/code]
Outra coisa, esta função tenta pegar o campo nome. Este campo está definido no struts-config e na classe FormularioProcessarCliente?
Mas péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí péraí
Você não está escrevendo a propriedade name dentro da tag struts na página jsp não né??
tá mas tu conseguiu utilizar a tua função JS???!
Neste caso realmente não é necessário declarar no struts-config, ja que vc está usando um form bean.
Qual o erro que está acontecendo? Se puder postar, melhor pra a gente entender, pq eu ja num to entendendo mais nada hehehehehe
Não se esqueça do seguinte, qualquer campo que você colocar dentro do form struts na página .jsp e que seja um campo formado por tag struts, exemplo, <html:text size=“17” maxlength=“15” property=“nome”/> deverá ESTAR COM CERTEZA dentro da declaração do forms lá no struts-config.xml, senão, nada feito.
Lá no seu exemplo anterior não vi nenhum campo de form nas declarações dos seus 4 forms.
Pra fazer isso é o seguinte, adicione a linha abaixo dentro da tag <form-bean do seu arquivo struts-config.xml:
Eu escrevi “nome” mas deve ser o campo que você estará acessando em javascript.
Quando o struts “executar” o jsp ele vai “trocar” todos os campos que começam com a tag <html:text … /> pelos seus respectivos campos listados la na tag form-property do struts-config.xml.
Entendeu?
alert("oi");
function validarForm() {
if (document.forms[0].nome.value == ""){
alert("O campo nome deve ser preenchido!");
document.forms[0].nome.focus();
return ;
}
}
função 2 em javascript
function validarForm() {
d = document.formCliente;
if (d.nome.value == ""){
alert("O campo nome deve ser preenchido!");
document.nome.focus();
return ;
}
}
- eu criei o mesmo formulario utilizando a tag do struts e nao funciona…alguem pode me dizer o ke é ?
Obs.:gente é o mesmo formulario so ke utilizo com a tag so struts ke nao muda kuase nada o exemplo ta aí em baixo !
<html:html locale="true">
<head>
<title>Inclusão de Cargos</title>
<script language="javascript" src="java_script/validarFormCliente.js"></script>
</head>
<body>
<html:form action="/ProcessarInclusaoCliente.do" method="post" onsubmit="return validarForm()">
gente to precisando mesmo !!! 
<html:form action="/ProcessarInclusaoCliente.do" method="post" onsubmit="return validarForm()">
-
mas o problema ke kuando eu seto o name dentro da tag <html:form> do struts dispara um erro dizendo ke dentro desta tag na se pode ter um campo xamado name !!!
-
serio eu consegui fazer estes 2 exemplos javascript ke kolokei aí e pegou blza …isso utilizando html puro …
-
MAs kuando eu colokei dentro da tag do struts nao funcionou !!

-
O engraçado ke ele exibe akela mensagem oi mas nao paga a função !
utilizando a tag do struts
<html:html locale="true">
<head>
<title>Inclusão de Cargos</title>
<script language="javascript" src="java_script/validarFormCliente.js"></script>
</head>
<body>
<html:form action="/ProcessarInclusaoCliente.do" method="post" onsubmit="return validarForm()">
Obs.: Aki o javascript nao funciona … 
html puro
<html>
<head>
<title>Inclusão de Cargos</title>
<script language="javascript" src="java_script/validarFormCliente.js"></script>
</head>
<body>
<form name="cliente"action="/ProcessarInclusaoCliente.do" method="post" onsubmit="return validarForm()">
Obs.: Aki o javascript funciona legal .pois aki posso setar o campo name na tag do struts nao !
<form-beans>
<form-bean name="formularioExibirFormularioCliente" type="pkg.formulario.exibir.FormularioExibirCliente"/>
<form-bean name="formularioExibirConsultaCliente" type="pkg.formulario.exibir.FormularioExibirCliente"/>
<form-bean name="formularioProcessarInclusaoCliente" type="pkg.formulario.processar.FormularioProcessarCliente"/>
<form-bean name="formularioProcessarConsultaCliente" type="pkg.formulario.processar.FormularioProcessarCliente"/>
</form-beans>
Action Mapping Definitions -->
<action-mappings>
<action path="/ExibirInclusaCliente" type="pkg.formulario.struts.exibir.AcaoExibirFormularioCliente" name="formularioExibirFormularioCliente" scope="request" validate="false" >
<forward name="InclusaoCliente" path="/jsp/incluirCliente.jsp" />
</action>
<action path="/ProcessarInclusaoCliente" type="pkg.formulario.struts.processar.AcaoProcessarFormularioIncluirCliente" name="formularioProcessarInclusaoCliente" scope="request" validate="false" >
<forward name="InclusaoCliente" path="/jsp/incluirCliente.jsp" />
</action>
<action path="/ExibirConsultaCliente" type="pkg.formulario.struts.exibir.AcaoExibirConsultaCliente" name="formularioExibirConsultaCliente" scope="request" validate="false" >
<forward name="ConsultaCliente" path="/jsp/consultaCliente.jsp" />
</action>
<action path="/ProcessarConsultaCliente" type="pkg.formulario.struts.processar.AcaoProcessarConsultaCliente" name="formularioProcessarConsultaCliente" scope="request" validate="false" >
<forward name="ConsultarClienteExibir" path="/jsp/exibirConsultaCliente.jsp" />
</action>
</action-mappings>
nao estou colocando dentro da tag nao o name !!!
- a propriedade nome existe sim no meu formulario de processa cliente mas esse negocio de declarar no struts-congi eu nao fiz !!! nao sei nem como é
ainda nao … e pior ke tudo ke vc falaram eu fiz …kuano eu incluo o import do java script ele exibe este erro ---->>"org.apache.struts.taglib.html.BEAN" xegando nem a exibir o formulario . Mas kuando eu tiro o import di javascript o formulario é exibido rapidamente !!
blza eu vou postar já já o codigo dexa so eu ajeitar aki pra aparecer uma coisa legivel pra vcs ! 
meu struts-config
<?xml version="1.0" encoding="ISO-8859-1" ?>
<struts-config>
<data-sources/>
<form-beans>
<form-bean name="formularioExibirInclusaoCargo"
type="br.gov.am.tce.sap.projeto.cliente.struts.formulario.exibir.FormularioExibirInclusaoCargo"/>
<form-bean name="formularioProcessarInclusaoCargo"
type="br.gov.am.tce.sap.projeto.cliente.struts.formulario.processar.FormularioProcessarInclusaoCargo"/>
</form-beans>
<!-- ========================================= Global Exception
Definitions -->
<global-exceptions/>
<!-- =========================================== Global Forward
Definitions -->
<global-forwards/>
<action-mappings>
<action path="/ExibirInclusaoCargo" type="br.gov.am.tce.sap.projeto.cliente.struts.acao.exibir.AcaoExibirInclusaoCargo"
name="formularioExibirInclusaoCargo" scope="request" validate="false" >
<forward name="InclusaoCargo" path="/jsp/inclusaoCargo.jsp" />
</action>
<action path="/ProcessarInclusaoCargo" type="br.gov.am.tce.sap.projeto.cliente.struts.acao.processar.AcaoProcessarInclusaoCargo"
name="formularioProcessarInclusaoCargo" scope="request" validate="false" >
<forward name="InclusaoCargo" path="/jsp/msgSucessoo.jsp" />
<forward name="Erro" path="/jsp/erroRegistroDuplicado.jsp" />
<forward name="Erro1" path="/jsp/erro1.jsp" />
</action>
</action-mappings>
<!-- </struts-config>
meu formulario
<%@ page language=“java”%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix=“bean” %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix=“html” %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix=“logic”%>
<html:html locale=“true”>
Inclusão de Cargos
Gerenciar Cargos - Incluir Cargo
<html:form action="/ProcessarInclusaoCargo.do" method=“post” onsubmit=“validarForm()”>
<th>Nome:</th>
<td><html:text property="nome" size="55" maxlength="55" readonly="true" /></td>
<td><input type="button" value="Confirmar Inclusao" onclick="document.formularioInclusaoCargo.action='/SAP/ProcessarInclusaoCargo.do';submit()"></td>
<td><input type="button" value="Limpar" onclick=""></td>
<td>
<html:link href="javascript:history.back()">Voltar</html:link>
</td>
</html:form>
</body>
</html:html>
meu fomulariobean
package br.gov.am.tce.sap.projeto.cliente.struts.formulario.processar;
import org.apache.struts.action.ActionForm;
@SuppressWarnings("serial")
public class FormularioProcessarInclusaoCargo extends ActionForm {
private String nome ;
public String getNome() {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}//fim da classe