Forum Pplware
[JS] Array como argumento de função? - Versão de Impressão

+- Forum Pplware (http://forum.pplware.com)
+-- Fórum: Mais Tech (/forumdisplay.php?fid=11)
+--- Fórum: Programação e Web (/forumdisplay.php?fid=16)
+--- Tópico: [JS] Array como argumento de função? (/showthread.php?tid=18849)



[JS] Array como argumento de função? - dininis - 08-04-2014 15:10

Gostaria de saber se é possível chamar uma função em que um dos seus argumentos seja um array e, se possivel, como fazê-lo... Já pesquisei por isso e não encontrei (ou o que encontrei não é de todo o que pretendo).

Exemplo: Função para dar um aviso ao utilizador
Argumentos: Titulo (string), Avisos (array)

Código:
<script>
function ShowWarning(title,content){
     /*
tratar da variavel "content" em que cada valor seja um aviso. content[0] seria um aviso, content[1] seria outro, ...
     */
}

// como devo chamar a função?
ShowWarning('erro', array('erro1','erro2')); // não funciona :/
</script>



RE: [JS] Array como argunmento de função? - Corvus - 08-04-2014 16:58

Código:
ShowWarning('erro', [ 'erro1', 'erro2' ]);
Exemplo: http://jsfiddle.net/8S2Xz/


RE: [JS] Array como argumento de função? - dininis - 09-04-2014 10:48

Thanks Big Grin

Já agora, é possível chamar essa mesma função e inserir o array dentro de um único input?
A forma como passo informação de JavaScript para o PHP é através de formulários ocultos (<input type='hidden' />) e em vez de criar um formulário com um monte de inputs, dá para simplesmente meter o array lá para dentro e está feito?


RE: [JS] Array como argumento de função? - Corvus - 09-04-2014 11:40

Desculpa mas não entendi a pergunta


RE: [JS] Array como argumento de função? - dininis - 09-04-2014 11:48

já resolvi Tongue
Mas se houver forma ainda mais simples, apita:
Código:
<form method='post' id='infoForm'>
<input type='hidden' name='exemplo' />
</form>

<script>
function sendToPHP(info){
document.getElementById('infoForm').elements['exemplo'].value=info;
document.getElementById('infoForm').submit();
}
</script>

essa função seria chamada por um evento, onClick
Código:
<script> sendToPHP(['exemplo','outro']); </script>

O resultado, em $_POST['exemplo'] fica como "exemplo,outro". Fiz o seguinte:
Código:
$_POST['exemplo'] = explode(",",$_POST['exemplo'])
 e lá obtive a minha array para trabalhar com o PHP Smile