Ir para conteúdo
Fórum Script Brasil
  • 0

Passar Array Php Para Array Javascript


Carlos Rocha

Pergunta

Ola pessoal.

Fiz esse script de um de uma função JavaScript

<script>
function EscolhePlano(Valor){
     if (Valor == '.<?= $lista ?>') { Valor = '<font size=2 face=Verdana><b>Você escolheu o <?= $nome ?><br> ( R$ <?= $precos ?> anuais )'; }
  document.getElementById("Plane").innerHTML = Valor;
}
</script>
Acontece que a variavel php <?= $lista ?>, é uma array(matriz) com "n" elementos que vem de : $lista= split('[/.-]', $ext); e eu preciso que a linha do meio do Javascript(Só ela), O que eu preciso é criar uma variavel JavaScript que receba o valor da matriz php <?= $lista ?>, para eu fazer o seguinte:
Cada vez que um indice da variavel JavaScript lista, que recebe  todos os indices da variavel php $lista, rodar, execute isso.
Ficaria mais ou menos assim:
<script>
lista = $lista;
function EscolhePlano(Valor){
//(eu sei que ta errado)
foreach (lista){
if (Valor == lista) {
             Valor = '<font size=2 face=Verdana><b>Você escolheu o <?= $nome; ?><br> ( R$ <?=$precos; ?> anuais )';
                     }
                }
        document.getElementById("Plane").innerHTML = Valor;
                             }

</script>

Resumendo, como criar um array em JavaScript e entregar a ela uma array php?

E como usar a função foreach (para cada) em JavaScript?

Tem como fazer isso?

Passar array php para array JavaScript

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Sabe, eu consegui. aí vai o código.


<script>
function ForInDemo()
{
  a = new Array(<? 
//cria o array
$frutas = array("laranja","banana","maçã"); 
//retorna o numero de elementos da array $frutas e subtrai o total por 1
$total = count($frutas)-1;
//inicia o loop, o $i vai receber a posição atual começando do 0, por isso que subtraimos por 1 na linha acima
    foreach( $frutas as $i => $frutas_lista) {
     echo "\"$frutas_lista\"";
     if ($total != $i) { echo ","; } //verifica se a posição atual é igual ao total, se não for escreve ","
    }
?>
)
  var a, key, s = "Essas frutas são gostosas:<br>";
  for (key in a)
  {
     s += a[key] + "<BR>";
  }
  return(s);
}
document.write(ForInDemo());
</script>

Porem surgiu outro problema: Preciso que essa função repita varias vezes sem mudar de nome(Vou coloca-la dentro de um loop php daí ela aparecer varias vezes).
<script>
function ForInDemo(Valor)
{
  a = new Array(".ert",".wer",".qws",".nhg")
  var a, key;
  
  for (key in a)
  { 
     if (Valor == a[key]) {
        Valor = '<font size=2 face=Verdana><b>Você escolheu o <br> ( R$  anuais )'; 
                        }
      document.getElementById("Plane").innerHTML = Valor;
    
  }
}

</script>

Ela sera chamada de um formulario atraves de um evento onclik de forma tal que a cada vez que a função aparecer,a variavel a = new Array(".ert",".wer",".qws",".nhg"), recebe outros indices sem ser (".ert",".wer",".qws",".nhg") .

Porem, quando eu cliko, só esta reconhecendo a ultima vez que a função aparece.

Tem jeito de fazer o seguinte?

Quando clikar, ele procura a primeiro aparicao da função, se não encontrar o que quer vai pra segunda aparição, e se não vai para a terceira.

Assim por diante.

Tem jeito isso?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      652k
×
×
  • Criar Novo...