Gostaria de preencher automaticamente no input do formulário com a data atual, pois da forma em está só da certo se o usuario preenher e é isto que não desejo (deve ser preenchido automaticamente pelo sistema). Abaixo segue o trecho do arquivo jsp.:
No DAO o metodo que utilizo para gravar está descrito abaixo:
//metodo que inclui um novo pedido feito pelo usuariopublicvoidnovaVenda(Vendavenda)throwsSQLException{Stringsql="insert into vendas (vendata, vencli, venvaltotal) values (?,?,?)";PreparedStatementps=null;try{ps=conexao.prepareStatement(sql);ps.setDate(1,newjava.sql.Date(venda.getVenData().getTime()));ps.setString(2,venda.getVenCli());ps.setDouble(3,venda.getVenValTotal());ps.execute();}catch(SQLExceptioner){Logger.getLogger(VendaDAO.class.getName()).log(Level.SEVERE,null,er);}finally{ps.close();}}
Olá LostSoldier!
Fiz um JavaScript e coloquei no arquivo jsp, mas não deu certo. Segue abaixo todo o arquivo jsp com o script:
<%--Document:indexCreatedon:17/01/2017,20:57:39Author:Jairo--%><%@tagliburi="http://java.sun.com/jsp/jstl/core"prefix="c"%><%@pagecontentType="text/html"pageEncoding="UTF-8"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><%@taglibtagdir="/WEB-INF/tags"prefix="tagsJairo"%><tagsJairo:verificaUsuario/><c:importurl="cabecalho.jsp"/><h1FormulariodePedidos</h1><formid="formVenda"method="post"action="VendaCRUD"><labelfor="vencodigo">CodigodaVenda</label><inputtype="text"name="vencodigo"id="vencodigo"size="10"disabledvalue="<% if (request.getParameter("vencodigo") != null) { out.println(request.getParameter("vencodigo")); } else if (request.getAttribute("sessaoUltimoRegistroVenda") != null) { out.println(request.getAttribute("sessaoUltimoRegistroVenda")); } %>"/><labelfor="vendata"Data</label><inputtype="date"name="vendata"id="vendata"onkeypress="formata_mascara(this,'##/##/####'); return Numero(event);"placeholder="dd/mm/aaaa"pattern="[0-9]{2}/[0-9]{2}/[0-9]{4}"size="10"value="${param.vendata}"requiredsize="10"<labelfor="vencli"Cliente</label><inputtype="text"name="vencli"id="vencli"size="5"value="${nome}"readonly<br><br><%--labelfor="venvaltotal">TotalGeral:</label><inputtype="text"name="venvaltotal"id="venvaltotal"size="20"maxlength="20"value="${param.venvaltotal}"<br>--%><inputtype="submit"name="acao"value="Escolher Produto"</form><formid="formItensVenda"method="post"action="VendaCRUD"<%if(request.getParameter("vendata")==null){out.println("hidden='true'");}%>><inputtype="hidden"name="itenscodvenda"value=<%if(request.getParameter("itenscodvenda")!=null){out.println(request.getParameter("itenscodvenda"));}elseif(request.getAttribute("sessaoUltimoRegistroVenda")!=null){out.println(request.getAttribute("sessaoUltimoRegistroVenda"));}%><labelfor="prodcodigo"CodigodoProduto</label><inputtype="text"name="prodcodigo"id="prodcodigo"size="10"disabled<selectname="selectProduto"id="selectProduto"<tagsJairo:listaProdutoSelect</select<labelfor="itensquant"Quantidade</label><inputtype="text"name="itensquant"id="itensquant"size="10"required<inputtype="hidden"name="itenstotalvenda"id="itenstotalvenda"size="10"value="${param.itenstotalvenda}"<inputtype="hidden"name="vencli"id="vencli"value="${nome}"<inputtype="hidden"name="vendata"id="vendata"value="${param.vendata}"<inputtype="hidden"name="venvaltotal"id="venvaltotal"value="${param.venvaltotal}"<inputtype="submit"name="acao"value="Incluir Produto"/><br><%if(request.getAttribute("sessaolistaItensVenda")!=null){java.util.ListlistaDeItensVenda=(java.util.List)request.getAttribute("sessaolistaItensVenda");out.println("<table border='1'>");out.println("<tr><td>Codigo da Venda</td><td>Codigo do Produto</td><td>Nome do Produto</td><td>Quantidade</td><td>Preço</td><td>Total</td></tr>");doubletotalVenda=0;for(java.util.Iteratoriterator=listaDeItensVenda.iterator();iterator.hasNext();){br.com.jairo.modelo.ItensVendaitensVenda=(br.com.jairo.modelo.ItensVenda)iterator.next();out.println("<tr>");intitensCodVenda=itensVenda.getItensCodVenda();intitensCodProd=itensVenda.getItensCodProd();StringprodDescricao=itensVenda.getProdDescricao();intitensQuant=itensVenda.getItensQuant();doubleprodValor=itensVenda.getProdValor();doubleitensTotalVenda=itensQuant*prodValor;totalVenda+=itensTotalVenda;out.println("<td align='center'>"+itensCodVenda+"</td>");out.println("<td align='center'>"+itensCodProd+"</td>");out.println("<td align='center'>"+prodDescricao+"</td>");out.println("<td align='center'>"+itensQuant+"</td>");out.println("<td align='center'>"+prodValor+"</td>");out.println("<td align='center'>"+itensTotalVenda+"</td>");out.println("</tr>");}out.println("<tr>");out.println("<td align='right' colspan='5'>Valor Total Deste Pedido:</td>");out.println("<td>"+totalVenda+"</td>");out.println("</tr>");out.println("</table>");}%></form><c:importurl="rodape.jsp"/><scriptfunctionatualizaCodigoProduto(){vargetProdCodigo=document.forms['formItensVenda']['selectProduto'].value;document.forms['formItensVenda']['prodcodigo'].value=getProdCodigo;}window.onload=function(){document.forms['formItensVenda']['selectProduto'].onclick=atualizaCodigoProduto;};functiondataAtual(){data=newDate();dia=data.getDate();mes=data.getMonth();ano=data.getYear();dataCompleta=dia+'/'+mes+'/'+ano;returndataCompleta;}window.onload=function(){document.getElementById("vendata").value=Data();}</script>
Não funcionou. Pode me mostrar onde está o erro!?
L
Solucao aceita
LostSoldier
Imagino que você está chamando a função errada…
document.getElementById("vendata").value=Data();
Não seria dataAtual() ?
Outra coisa, não recomendo você confiar uma data pelo javascript pelo simples fato dele pegar a data/hora da máquina que está rodando o script e não pelo servidor que seria o ideal (o usuário pode alterar a data do computador dele e o js pega a data modificada pegou?)
jairodione
Olá LostSoldier!
Muito obrigado, você me ajudou e muito na solução deste problema. Agora com relação a você não recomendar uma data pelo javascript pelo simples fato dele pegar a data/hora da máquina que está rodando o script e não pelo servidor que seria o ideal (o usuário pode alterar a data do computador dele e o js pega a data modificada pegou?).
Como faço para colocar isto no servidor, nunca fiz esta opção que você menciona, e pensei em colocar o preenchimento automático justamente por pensar em que o usuário poderia colocar uma data qualquer!