Olá, quero fazer uma validação via script, só que trabalho com elas apenas na mesma página. Gostaria de saber como faço retorno quando o script está em página diferente.
COMO EU FARIA:
<script>
function valida(){
var temp = $('#nome').val();
if(temp==""){
$('#erro').html('insira corretamente'); return false;
}
}
</script>
<form>
<input type='text' id='nome'>
<input type='submit' onclick='return valida()'>
</form>
<div id='erro'></div> //o erro apareceria aqui
mas quero a função em outra página
página1
[code][/code]
página2
[code]//como as páginas sao jsp
<%@include file=‘pagina1.jsp’%>
[/code]
mas fazendo uns testes aqui, nem a função o submit ao ser pressionado consegue chamar. coloquei apenas um alert na função e nem isso aparece
javascript por ser client é obrigatório ser na mesma página ?
Não entendi, você está tentando utilizar, para validar um campo da página1, o script da página2?
sim, deve estar na página…
você pode criar um arquivo script.js e incluir no inicio das páginas.
exatamente isso rs
douglas > MUITO bom, nao sabia que podia colocar arquivos externos, o resultado é o mesmo, não está na minha página, dei uma pesquisada aqui e encontrei. Valew jow
Só mais uma coisa … tenho uma function (agora num arquivo externo =D), ela é chamada num submit de um form.
Como eu passo uma variavel do form nessa função ? só estou conseguindo passar texto
function valida(temp){
alert(temp);
}
<form>
<input type='text' id='nome'>
<input type='submit' onclick='valida(???)'>
</form>
se eu colocar valida(texto), ele passa como string e exibe TEXTO e nao o que eu digitei
Meu amigo tsalsicha acho que vc consegue validar dando um nome no formulário. assim
function valida(){
alert(document.form1.nome.value);
}
<form name="form1">
<input type='text' id='nome' name="nome">
<input type='submit' onclick='valida()'>
</form>
Ou vc pode pegar o valor pelo ID Assim:
function valida(){
alert(document.getElementById("nome").value);
}
<form>
<input type='text' id='nome'>
<input type='submit' onclick='valida()'>
</form>
Abr,
Altair
Não não, a dúvida ainda continua …
quero fazer uma função geral em javascript. Ou seja, preciso passar dados como parâmetro. Só que os dados que quero passar são do html.
function valida(var1){
alert(var1);
}
no html
<form>
<input type='text' id='nome'>
<input type='submit' onclick='valida('nome')'>
</form>
Só que do jeito que está aí em cima, ele passa uma String ‘nome’ e não a variável. Se eu tirar os ‘’, ele dá erro, eu preciso passar o conteudo do input nome
Bom dessa forma você deve estar usando algum biblioteca de javascript Ex: JQuery.
Bom tem uma forma de usar sem a biblioteca assim:
<form>
<input type="text" name="nome" />
<input type="submit" onclick="valida('this.nome.value')" />
</form>
Mais isso pode ter incompatibilidade com alguns browser.