Acredito ser algo simples, mas já me matei pra fazer isso funcionar e não consigo. Ouvi dizer que o tempo de compilação do JSP e interpretação do JavaScript são diferentes e por isso não funcionaria, mas como resolvo?
Só tenho 2 funções, uma de máscara e outra que só permite números.
Segue o Código do Java Script (funcoes.js):
function formata_mascara(campo_passado,mascara)
{
var campo = campo_passado.value.length;
var saida = mascara.substring(0,1);
var texto = mascara.substring(campo);
if(texto.substring(0,1) != saida)
{
campo_passado.value += texto.substring(0,1);
}
}
function only_number()
{
if (event.keyCode == 13)
{
text2.focus(); text2.select();
return true
}
if (!(event.keyCode >= 48 && event.keyCode <= 57))
{
return false
}
else
{
text2.value = text2.value + event.keyCode;
}
return true
}
Segue o código do JSP (CadastroGrupo.jsp):
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script language="javascript" src="funcoes/funcoes.js"> </script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro Grupo</title>
<%@page import="modelo.Cooperativa" %>
<%@page import="java.util.ArrayList;"%>
<%! ArrayList<Cooperativa> cooperativas; %>
</head>
<body>
<center>
<%if(session.getAttribute("acesso") != null)
{
cooperativas = (ArrayList<Cooperativa>)session.getAttribute("cooperativas");%>
<form action="/grupo_taxi/ControleGrupo" method="get">
<table border="0" align="center">
<tr>
<td align="right">Destino: </td>
<td><input type="text" size="15" name="destino" /></td>
</tr>
<tr>
<td align="right">Horário: </td>
<td><input type="text" name="horaPartida" size="15" maxlength="5" onkeypress="formata_mascara(this,'##:##'); return only_number();"/></td>
</tr>
<tr>
<td align="right">Data: </td>
<td><input type="text" name="data" id="data" size="15" maxlength="10" onkeypress="formata_mascara(this,'##/##/####'); return only_number();" /></td>
</tr>
<tr>
<td align="right">Cooperativa: </td>
<td align="left">
<select>
<% for(Cooperativa coop : cooperativas){%>
<option value="<%= coop.getId() %>" selected="selected"> <%= coop.getNome() %> </option>
<%} %>
</select>
</td>
</tr>
<tr align="center">
<td colspan="2">
<input type="submit" name="comando" value="Cadastrar" />
<input type="reset" value="Limpar" />
<input type="submit" name="comando" value="Voltar" />
</td>
</tr>
</table>
</form>
<%
}
else
out.print("<b>Acesso Negado.</b>");
if (request.getAttribute("mensagem") != null)
out.print(request.getAttribute("mensagem"));
%>
</center>
</body>
</html>
AGRADEÇO QUALQUER ÍDEIA, POIS JÁ ESTOU SEM !!!