Olá pessoal!
Alguém sabe como posso fazer para atribuir e recuperar um valor de sessão por meio do javascript?
Obrigado
Olá pessoal!
Alguém sabe como posso fazer para atribuir e recuperar um valor de sessão por meio do javascript?
Obrigado
Por javascript não tem como.
Cara, só é possível acessar a sessão em ambiente servidor, o javascript trabalho browser do cliente, logo não é possível colocar nada em sessão pelo javascript.
O que voçe precisa fazer? talvez possamos ajudar.
Até.
Então, o que poderia ser feito é o seguinte…
Se vc quer setar um valor de sua página dinamicamente através de javascript para o servidor sem dar refresh na página, vc pode usar o XMLHttpRequest…
Se for mandar no refresh fica bem mais simples, pois pode mandar pelo form…
Se quiser receber um valor qualquer do servidor para sua página sem dar refresh, o melhor mesmo é XMLHttpRequest…
Mas se for no load da página, vc pode fazer um scriplet com request.getParameter(“variável”), e usá-lo tanto direto no HTML como também atribuir o valor à uma variável em javascript, tipo:
function showVar() {
var show = <% request.getParameter("variavel") %>;
alert(show);
}
Dessa forma vc tem sua variável do servidor trabalhando para vc em javascript…
Bem, espero ter ajudado!!!
Seguinte,
Tenho uma pagina JSP que carrega um menu e uma tabela. Esta tabela é populada com um metodo ajax, e tem um refresh na tela que de tempos em tempos ele vai lá, executa a consulta e atualiza os dados da tabela.
Bem, em uma das colunas, o campo é um , ao selecionar um item eu quero que dispare um método que salve na sessão o código referente ao registro marcado, pois se o usuário decidir navegar pelo sistema, ao retornar àquela página, o mesmo registro deve permanecer selecionado.
Este é o meu problema. Dai então eu gostaria de armazenar na sessão este valor, e recuperá-lo sempre que executar o método que consulta as informações na base de dados (método Ajax)
Obrigado
Cara, tu pode colocar isto em um cookie.
O problema é com quem tem cookies desabilitados.
Mas fora isso vai funcionar bem.
Até por que é uma funcão para facilitar a navegação.
Que achas?
Poderia enviar o valor através de AJAX para o servidor, no servidor jogar esse valor na sessão e recuperá-lo quando necessário, mas…
Se o usuário sair da sessão ou perdê-la sem querer, ele perde essa funcionalidade…
Então uma outra sugestão seria vc gravar essa informação em BD e recuperá-la sempre que necessário através do controle de regra de negócios da sua aplicação…
Claro que tudo vai depender da necessidade real de sua aplicação também!
Valeu!!!
Bom, lembrando que quando falei em o usuário desabilitar os cookies, isto também vale para o ajax, pois o usuário pode desabilitar o javascript, dai também não funciona.
Valeu, mas acho que a questão do cookie não vai resolver o meu problema, seria interessante se desse certo o que o amigo postou logo acima, sobre dar um request.getParameter().
Vou ver o que consigo.
Se alguém souber de alguma coisa, fazor postem aqui…
O código fica feio, mas vc pode setar sua variável na sessão através de scriptlets…
<% String var = "%> variável <%";
request.setParameter("variavel", var);
%>
Existem outras formas de fazer isso através de Frameworks e seus mapeamentos, só que eu não conheço todos, mas para citar, temos o struts com suas tags <bean:write…
Opa, nós utilizamos struts aqui, como eu poderia fazer isso com este framework? Tens um exemplo?
Obrigado
Já consegui salvar na sessão, agora estou com dificuldades em recuperar o valor.
Se usas o Struts, na sua Action vc precisa apenas usar o método getParameter da request e atribuir a chave com o valor que vc setou na sessão:
String x = (String) request.getParameter("chave da variável");
Na página, com o struts vc pode recuperar um valor de variável da sessão da seguinte forma:
<bean:write name=“chave da variável” />
Para setar um valor de variável na sessão vc também pode usar o input hidden do html:
O valor deste input vc pode atribuir dinamicamente através de javascript...Bem, espero que isso te ajude…
Qualquer coisa, posta aí!!!
Você pode usar ajax pra setar e retornar um valor da sessão…
flw