Função javascript no input - IE10 [RESOLVIDO]

13 respostas
P

Pessoal,

Tenho um botão "input" em uma tabela, e não está funcionando em IE10, alguém poderia me ajudar com isso?

<td><a href="javascript: if (confirm('Deseja realmente EXCLUIR o registro?')) { 
window.location.href='ServletDeletaUsuario?login=${excluirUsuario.login}' 
} else { void('') }; ">
<input type="button" value="Excluir"></a></td>

13 Respostas

drsmachado
nem se...
<head>
function funcaoQualquer(){
if (confirm('Deseja realmente EXCLUIR o registro?')) {   
window.location.href='ServletDeletaUsuario?login=${excluirUsuario.login}'   
} else { void('') };
}
</head>
<body>
<input type="button" onclick="funcaoQualquer();" value="Excluir"/>
</body>
?
P

Olá drsmachado blz?
Da erro:

rg.apache.jasper.JasperException: An exception occurred processing JSP page /cadastrarUsuario.jsp at line 92

89: 	<script>
90: function funcaoQualquer(){  
91: if (confirm('Deseja realmente EXCLUIR o registro?')) {     
92: window.location.href='ServletDeletaUsuario?login=${excluirUsuario.login}'
Ataxexe

Esse erro não é de javascript, analise o log do servidor para ver o que ocorreu.

Se o log do servidor não te indicar algo, veja o compilado do jsp cadastrarUsuario na linha 92. (O local onde os compilados ficam varia dependendo do servidor.)

P

eu sei… é que a quando coloco ele separado no head e não no a href… ele considera uma linguagem de programação… tendo que adicionar o <% %> senão da essas coisas…

to apanhando com isso…

drsmachado

Coloca o código completo que você criou, com a minha alteração.

P
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
	pageEncoding="ISO-8859-1"%>
<%@ page import="br.com.simcard.usuario.VerificaUsuario"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Cadastrar Usu&aacute;rio</title>


<script>
function funcaoQualquer(){  
if (confirm('Deseja realmente EXCLUIR o registro?')) {     
window.location.href='ServletDeletaUsuario?login=${excluirUsuario.login}'     
} else { void('') };  
} 

</script>

</head>

<style type="text/css">
@charset "UTF-8";
@import url(http://fonts.googleapis.com/css?family=Oxygen+Mono);
body {background: url(./img/novo1.jpg) no-repeat;-webkit-background-size: cover;-moz-background-size: cover;background-size: cover 100%;}
<!--Cor cinza f1f1f1-->
#cssmenu {padding: 0;margin: 0;border: 0;}
#cssmenu ul,#cssmenu li {list-style: none;margin: 0;padding: 0;}
#cssmenu ul {position: relative;z-index: 597;}
#cssmenu ul li {float: left;min-height: 1px;vertical-align: middle;}
#cssmenu ul li.hover,#cssmenu ul li:hover {position: relative;z-index: 599;cursor: default;}
#cssmenu ul ul {visibility: hidden;position: absolute;top: 100%;left: 0;z-index: 598;width: 100%;}
#cssmenu ul ul li {float: none;}
#cssmenu ul ul ul {top: 0;left: auto;right: -99.5%;}
#cssmenu ul li:hover>ul {visibility: visible;}
#cssmenu ul ul {bottom: 0;left: 0;}
#cssmenu ul ul {margin-top: 0;}
#cssmenu ul ul li {font-weight: normal;}
#cssmenu a {display: block;line-height: 1em;text-decoration: none;}
#cssmenu {background: #F6F4F4;border-bottom: 4px solid #1b9bff;font-family: 'Oxygen Mono', Tahoma, Arial, sans-serif;font-size: 14px;}
<!--background: #333   ; -->
#cssmenu>ul {*display: inline-block;}
#cssmenu:after,#cssmenu ul:after {content: '';display: block;clear: both;}
#cssmenu a {background: #F6F4F4;color: #32ACFD;padding: 0 30px;}
<!--{background:#333;color:#CBCBCB;}Cor barra    - Cor fonte    - largura botão -->
#cssmenu ul {text-transform: uppercase;}
#cssmenu ul ul {border-top: 4px solid #1b9bff;text-transform: none;min-width: 263px;}
#cssmenu ul ul a {background: #1b9bff;color: #FFF;border: 1px solid #0082e7;border-top: 0 none;line-height: 50%;padding: 16px 20px;}
#cssmenu ul ul ul {border-top: 0 none;}
#cssmenu ul ul li {position: relative}
#cssmenu>ul>li>a {line-height: 48px;}
#cssmenu ul ul li:first-child>a {border-top: 1px solid #0082e7;}
#cssmenu ul ul li:hover>a {background: #35a6ff;}
#cssmenu ul ul li:last-child>a {border-radius: 0 0 3px 3px;box-shadow: 0 1px 0 #1b9bff;}
#cssmenu ul ul li:last-child:hover>a {border-radius: 0 0 0 3px;}
#cssmenu ul ul li.has-sub>a:after {content: '+';position: absolute;top: 50%;right: 15px;margin-top: -8px;}
#cssmenu ul li:hover>a,#cssmenu ul li.active>a {background: #1b9bff;color: #FFF;}
#cssmenu ul li.has-sub>a:after {content: '+';margin-left: 5px;}
#cssmenu ul li.last ul {left: auto;right: 0;}
#cssmenu ul li.last ul ul {left: auto;right: 99.5%;}
.titulo {font-size: 16px;font-family: arial, helvetica, serif;color: #FFFFFF;}
.tituloErro {background-color:#F6F4F4; font-size: 20px; font-family: Berlin; color: #000000;}
.tabela {background-color: #32ACFD;color: #FFFFFF;aling: center;font-weight: bold;font-family: arial, helvetica, serif;font-size: 12px;text-align: center;position: relative;border-style: groove;border-color: white;}
.resultado {background-color: #F6F4F4;border-width: 1px;font-size: 12px;font-family: arial, helvetica, serif;text-align: center;position: relative;border-style: groove;border-color: white;}
.resultado2 {background-color: #F6F4F4;border-width: 1px;font-size: 12px;font-family: arial, helvetica, serif;text-align: center;position: relative;border-style: groove;border-color: white;}
.consultado {background-color: #FFFFFF;border-width: 1px;font-size: 13px;font-family: arial, helvetica, serif;text-align: center;position: relative;border-style: groove;border-color: white;}
.consultado2 {background-color: #FFFFFF;border-width: 1px;font-size: 13px;font-family: arial, helvetica, serif;text-align: left;position: relative;border-style: groove;border-color: white;}
.canto {top: 15px;}
.texto {font-size: 28px;font-family: Berlin;text-align: center;position: relative;}
.p {font-size: 13px;font-family: arial, helvetica, serif;text-align: center;position: relative;}
.direita {position: absolute;right: 5px;top: 22px;}
.tela {position: absolute;left: 140px;top: 27px;font-family: arial, helvetica, serif;}
</style>


<script>
	function limpaCampo() {
		document.getElementById("user").value = "";
		document.getElementById("pass").value = "";
		document.getElementById("adm").value = "";
	}
</script>


<script type="text/javascript">
	function OnSubmitForm() {
		Checked();
	}
</script>


<script>
	function Checked() {
		if (document.getElementById('adm').checked == true) {
			document.getElementById('adm').value = "S";
		}
	}
</script>


<body onload="limpaCampo()" onunload="limpaCampo()">

	<%
	VerificaUsuario verifica = new VerificaUsuario(); if (request.getSession().getAttribute("loginUsuario") != null) {
	if (verifica.verificaUsuarioADM(request.getSession()
						.getAttribute("loginUsuario").toString())) {
	%>
	<div class="titulo">
		<img src="./img/logo.png" border="0" width="128">
		<div class="tela">
			<b>Cadastro de Usu&aacute;rio</b>
		</div>
		<div class="direita">
			<input type="button"
				onclick="javascript: if (confirm('Deseja Fazer Logout?')) {window.location.href='logout.jsp'} else { void('') };"
				value="Logout"><br>
		</div>
	</div>

	<hr>
	<div id='cssmenu'>
		<ul>
			<li><a href='index.jsp'><span>Principal</span></a></li>
			<li class='has-sub'><a href='#'><span>Consultas</span></a>
				<ul>
					<li><a href='consultaUnitaria.jsp'><span>Unit&aacute;ria</span></a></li>
					<li><a href='uploadArquivoConsultaColetiva.jsp'><span>Coletiva</span></a></li>
					<li class='last'><a href='consultaChamado.jsp'><span>Chamado</span></a></li>
				</ul></li>
			<li class='has-sub'><a href='#'><span>Gerar Relatório</span></a>
				<ul>
					<li><a href='geraRelatorioAtual.jsp'><span>&Uacute;ltima
								Atualiza&ccedil;&atilde;o</span></a></li>
					<li class='last'><a href='geraRelatorioHistorico.jsp'><span>Hist&oacute;rico</span></a></li>
				</ul></li>
			<% if (verifica.verificaUsuarioADM(request.getSession().getAttribute("loginUsuario").toString())) { %>	
			<li class='has-sub'><a href='#'><span>Upload</span></a>
				<ul>
					<li><a href='uploadArquivoTelecom.jsp'><span>Telecom</span></a></li>
					<li><a href='uploadArquivoCtrGatewayNanocommTMPorto.jsp'><span>CTR/Gateway/Nanocomm/TMPorto</span></a></li>
					<li class='last'><a href='uploadArquivoCancelaChip.jsp'><span>Cancelar
								Chip</span></a></li>
				</ul></li>
			<li class='active'><a href='#'><span>Cadastro</span></a>
				<ul>
					<li><a href='cadastrarUsuario.jsp'><span>Cadastrar
								Usu&aacute;rio</span></a></li>
					<li><a href='cadastrarDominio.jsp'><span>Cadastrar Dom&iacute;nio</span></a></li>
				</ul></li>
			<%
				}
			%>

		</ul>
	</div>

	<form action="ServletCadastroUsuario" name="form" method="get"
		id="form" onsubmit="OnSubmitForm();">
		<input type="hidden" id="msgRetornoCadastro"
			value="<c:out value="${msgRetornoCadastro}"/>" />
		<center>
			<br> <br> <br>
			<table border="1px" cellspacing="0" cellpadding="6">

				<tr class="tabela">
					<td style="border-color: white" style="border-style:groove"
						colspan="3">Cadastrar Novo Usu&aacute;rio</td>
				</tr>
				<tr class="consultado">
					<td align="left" style="border-color: white"
						style="border-style:groove">Usu&aacute;rio:</td>
					<td><input type="text" name="user" id="user" align="left"
						maxlength=15>
				</tr>
				<tr class="consultado">
					<td align="left" style="border-color: white"
						style="border-style:groove">Senha:</td>
					<td><input type="password" name="pass" id="pass" align="left"
						maxlength=15></td>
				</tr>
				<tr class="consultado2">
					<td align="left" style="border-color: white"
						style="border-style:groove">ADM:</td>
					<td><input type=CHECKBOX name="adm" id="adm" VALUE="S"
						align="left">Sim</td>
				</tr>
			</table>

			<br> <input type="submit" value="Cadastrar" align="middle"
				onclick="javascript: if (confirm('Confirma Cadastro?')) {window.location.href='ServletCadastroUsuario'} else { void('') };">
			<input type="reset" value="Limpar Campos" align="middle"> <br>
			<br> <a
				href="javascript: if (confirm('Deseja ver a lista de Usu&aacute;rios?')) {window.location.href='ServletDeletaUsuario?excluirUsuario=${excluirUsuario}'} else { void('') };"><input
				type="button" value="Lista de Usu&aacute;rios Cadastrados"></a>
			<br>

			<c:if test="${excluirUsuario ne null}">
				<br>
				<hr>
				<br>
				<table border="1px" cellspacing="0" cellpadding="3">
					<tr class="tabela">
						<td style="border-color: white" style="border-style:groove"
							colspan="3">Usu&aacute;rios Cadastrados</td>
					</tr>
					<tr class="tabela">
						<td style="border-color: white" style="border-style:groove">Usu&aacute;rio</td>
						<td style="border-color: white" style="border-style:groove">Administrador</td>
						<td style="border-color: white" style="border-style:groove">Excluir</td>
					</tr>
					<c:forEach var="excluirUsuario" items="${excluirUsuario}">
						<tr class="resultado">
							<td style="border-color: white" style="border-style:groove"><c:out
									value='${excluirUsuario.login != null ? excluirUsuario.login : "---"}' /></td>
							<td style="border-color: white" style="border-style:groove"><c:out
									value='${excluirUsuario.adm != null ? excluirUsuario.adm : "---"}' /></td>
							<td style="border-color: white" style="border-style:groove">


<input type="button" onclick="funcaoQualquer();" value="Excluir"/> 


</td>
						</tr>
					</c:forEach>
				</table>
			</c:if>
			<br>
		</center>

	</form>
	<%
		} else {
	%>
	<center>
		<br> Usu&aacute;rio N&atilde;o &eacute; Administrador <br> <br>
		<br> <input type="button"
			onclick="javascript: location.href='login.jsp';" value="Voltar" /> <br>
		<br> <br>
		<div class="canto">
			<img src="./img/logoportoSeguro.png" border="0" width="310">
		</div>
		<br>
		<div class="texto">Prote&ccedil;&atilde;o e Monitoramento</div>
		<div class="texto">P&#38;D</div>

	</center>
	<%
		}
	%>

	<%
		} else {
	%>
		<script>
			alert("Favor logar no sistema");
			location.href="login.jsp";
		</script>

	<%
		}
	%>

	<script>
		var msgRetornoCadastro = document.getElementById("msgRetornoCadastro");

		if (msgRetornoCadastro != null && msgRetornoCadastro.value != "") {

			alert(msgRetornoCadastro.value);

		}
	</script>

</body>
drsmachado

Qual a mensagem completa do erro?

P
java.lang.NumberFormatException: For input string: "login"
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at javax.el.ListELResolver.coerce(ListELResolver.java:173)
	at javax.el.ListELResolver.getValue(ListELResolver.java:52)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:189)
	at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:985)
	at org.apache.jsp.cadastrarUsuario_jsp._jspService(cadastrarUsuario_jsp.java:87)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:690)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:477)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
	at servlet.br.com.simcard.ServletCadastroUsuario.doGet(ServletCadastroUsuario.java:84)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
21/08/2013 15:30:31 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [servlet.br.com.simcard.ServletCadastroUsuario] in context with path [/SIMCards] threw exception [An exception occurred processing JSP page /cadastrarUsuario.jsp at line 15

12: <script>
13: function funcaoQualquer(){  
14: if (confirm('Deseja realmente EXCLUIR o registro?')) {     
15: window.location.href='ServletDeletaUsuario?login=${excluirUsuario.login}'     
16: } else { void('') };  
17: } 
18: 


Stacktrace:] with root cause
java.lang.NumberFormatException: For input string: "login"
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at javax.el.ListELResolver.coerce(ListELResolver.java:173)
	at javax.el.ListELResolver.getValue(ListELResolver.java:52)
	at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)
	at org.apache.el.parser.AstValue.getValue(AstValue.java:169)
	at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:189)
	at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:985)
	at org.apache.jsp.cadastrarUsuario_jsp._jspService(cadastrarUsuario_jsp.java:87)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:690)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:477)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
	at servlet.br.com.simcard.ServletCadastroUsuario.doGet(ServletCadastroUsuario.java:84)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
drsmachado
java.lang.NumberFormatException: For input string: "login"
Isso me leva a crer que há a tentativa de uma conversão, porém, o valor não existe e, sendo assim, ocorre o erro. O que pode ser? Provável que excluirUsuario exista, mas o valor de login ainda não foi definido, estando, portanto, como "" (aspas vazias ou String vazia). Desta forma, quando é realizada a tentativa de leitura do valor (e, assim a conversão), ocorre a exceção, já que não temos valores iguais a uma String vazia. Provável solução? Alterar a função para:
<script>  
function funcaoQualquer(login){    
	if (confirm('Deseja realmente EXCLUIR o registro?')) {       
		window.location.href='ServletDeletaUsuario?login=' + login;
	}
}
</script>
E a alteração no componente button
<input type="button" onclick="funcaoQualquer('${excluirUsuario.login');" value="Excluir"/>

Detalhe, não gosto da forma como você desenvolveu teu código. Os scripts javascript no meio do html. Funciona? Claro, mas o ideal seria separar uma coisa da outra, deixando mais limpo e organizado.

P

Obrigado pelas dicas e informações…

Tentarei arrumar e retorno depois a confirmação dos resultados… obrigado

P

E na verdade eu precisava de alguém que manjasse muito de java no geral, para repassar este sistema que fiz… pois me tacaram no colo este sistema e sou mais especializado em engenharia de software… estou tentando ir implementando estas dicas, mas mesmo assim fica difícil com prazos e etc…

drsmachado

E o que você precisa fazer, exatamente?
Qualquer coisa, me manda MP e vemos.

P

Funcionou…

só faltou eu adicionar o “}” no input que vc passou, e funcionou, farei isso para as demais páginas… obrigado

<input type="button" onclick="funcaoQualquer('${excluirUsuario.login}');" value="Excluir"/>

Criado 20 de agosto de 2013
Ultima resposta 22 de ago. de 2013
Respostas 13
Participantes 3