Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fsilvarib

Target

Recommended Posts

Olá tudo bom pessoal?

 

Precisava de uma ajudinha de vocês. Vamos ao que interessa.

 

No meu site tem um form para entrar no Webmail e eu gostaria de que quando o usuário clicar no botão submit, abre uma nova janela do browser com o webmail.

 

Como todos saber que se eu usar o form desse jeito "<form action="caminho" target="_blank" method="post">", em XHTML Strict não vai validar por causa do Target.

 

Gostaria de saber se existe alguma solução para isso.

 

Pois também já tentei colocar esse JS abaixo que tem aqui no fórum que para links externos, o "rel="external"", mas sei que o form não aceita o "rel".

 

function externalLinks() {if (!document.getElementsByTagName) return;var anchors = document.getElementsByTagName("a");for (var i=0; i<anchors.length; i++) {  var anchor = anchors[i];  if (anchor.getAttribute("href") &&	  anchor.getAttribute("rel") == "external")	anchor.target = "_blank";}}window.onload = externalLinks;

Existe alguma forma de modificar esse JS para que ele também funcione com o form?

 

Eu também não sei nada de JS, vocês poderiam me ajudar?

 

Muito obrigado pela atenção de todos.

 

Até Mais. http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tem como os dados do login irem para uma página que faz o login e depois ela abrir uma nova janela do web mail?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um só formulário ou mais?

Se for um, é só dar um ID no formulário e adicionar o target. .

document.getElementById("id_form").target="_blank";
ou

document.getElementById("id_form").setAttribute("target","_blank");
Se for mais formulários, basta criar um loop usando for(), qualquer coisa pode postar. .

 

Deixe uma dessas linhas em uma função e chame no onload da página..

function novajanela(){// uma das linhas aqui}window.onload=novajanela;

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza....... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Funcionou legal aqui valeu mesmo....

 

Só tenho uma pequena dúvida......

 

Como é que faço para que ao invés de ele usar o Atributo ID, eu use o NAME.

 

 

Apenas isso.

 

Valeu mesmo....fico muito grato por sua ajuda...

 

FLW http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então eu esqueci de falar.

 

Existe alguma forma de juntar esses dois JS em um só?

 

Pq eu coloco aqui na página assim oh:

 

<script src="js/link.js" type="text/javascript"></script>	<script src="js/form.js" type="text/javascript"></script>

O primeiro é aquele JS que eu coloquei no inicio do post e o outro foi o que você me ajudou.

 

Quando eu tento clicar no botão do form ele funciona, mas quando eu clico no link referente ao 1 JS ele não abre nada..

 

Existe alguma forma de como eu posso resolver isso?

 

Muito obrigado pela sua atenção.

 

Valeu mesmo.

 

E desculpa pela minha chatisssccce.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode deixar tudo em um mesmo arquivo, não precisa separar. ..

function externalLinks() {

if (!document.getElementsByTagName) return;

var anchors = document.getElementsByTagName("a");

for (var i=0; i<anchors.length; i++) {

var anchor = anchors;

if (anchor.getAttribute("href") &&

anchor.getAttribute("rel") == "external")

anchor.target = "_blank";

}

document.getElementById("id_form").target="_blank";

}

window.onload = externalLinks;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá tudo bom?Sou eu novamente.Então funcionou beleza....mas no IE ta mostrando na barra de status um erro e o erro é esse:Caractere: 1Erro: 'document.getElementeById(...)' é nulo ou não é objetoCódigo: 0URL: "meu site"O que poderia ser?Eu ainda tenho mais 2 JS nessa página, 1 e para o relógio e outro é para o CSS..Poderia ser isso?Se precisar eu posto os outros 2 também.Muito obrigado até agora..Valeu pela sua ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse erro é mostrado quando o id não foi criado ou quando ele não existe mesmo..Por isso que essa linha está no onload, que só é chamada quando a página toda, incluindo os ids existentes, for carregada..//Fiz um teste aqui, usando o mesmo id "felix" no formulário, e funcionou sem erros.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah! então eu já sei pq isso pode ta acontecendo.Seguinte aqui estou usando query string em php, e quando eu clico em algum link que não tem esse determinado form ele da erro, já no link que tem esse form ele funciona.Aí no caso precisaria fazer com ele que soubesse se tem o ID ou não. Se ele tiver o ID funciona, se ele não tiver ele não da erro.Agora como é que pode ser feito isso que eu não sei.Desculpa mesmo kra, por estar aqui enchendo o seu saco.Valeu mesmo....Até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.