Autor Tópico: Campo Duplo Select não efetua a contagem de posição corretamente!  (Lida 549 vezes)

camilamoreirati

  • Intermediário
  • ***
  • Mensagens: 127
    • Email
Campo Duplo Select não efetua a contagem de posição corretamente!
« Online: Setembro 15, 2015, 10:37:24 am »
 Olá pessoal, estou com um problema.
 Tenho um controle que possui um campo duplo select, o mesmo é obrigatório e recebe lojas, cada loja possui no máximo 3 posições.
 Preciso fazer uma validação dentro de um botão ajax, testando que se o campo duplo select for maior que 3, ou seja, tenha mais de uma loja selecionada, que mostre uma mensagem, tentei assim:

 - $lj = strlen({sel_Lojas}); //DENTRO DO BOTÃO AJAX
 - sc_alert($lj);

 O que acontece: Seleciono uma loja e clico no botão ele me traz 3, seleciono mais uma loja ele me traz 7,porém se eu tiro novamente uma das lojas, ele continua trazendo 7, ou seja, ele não está fazendo a troca dos valores.
 Tentei também usar um foreach, porém acontece a mesma coisa.

 Testei dentro de um evento ajax onChange:

 [lj] = strlen({sel_Lojas});
 
 E no botão:

 sc_alert([lj]);

 Porém o campo fica assim quando seleciono mais de uma loja: 003@?@004.


 Alguém sabe me dizer o por que disso, ou me ajudar a efetuar esse count no campo corretamente ?

 Agradeço desde já.
 
Att. Camila Moreira
Desenvolvedor WEB

emsoft

  • Novato
  • *
  • Mensagens: 40
Re:Campo Duplo Select não efetua a contagem de posição corretamente!
« Responder #1 Online: Setembro 22, 2015, 10:41:56 am »
Utilize um Evento Ajax no OnChange do SELECT

Jailton

  • Expert
  • *****
  • Mensagens: 2030
Re:Campo Duplo Select não efetua a contagem de posição corretamente!
« Responder #2 Online: Setembro 22, 2015, 11:52:24 am »
Coloca como ONBLUR:
DUPLO SELECT FORMULÁRIOS

[glo_Grupo]='(';

$selecionados = explode(';', {GRUPO}); // o Sc usa o ; para separa as seleções.

// EXEMPLO DAS LINHAS:
for ($j = 0; $j < count($selecionados); $j++) {
    [glo_Grupo].=$selecionados[$j];
    if ($j <= Count($selecionados)-2) {
        [glo_Grupo].=',';
    }   
}

[glo_Grupo].=')';

ECHO 'GRUPO = '.[glo_Grupo]."<BR>";

break;



$selecionados = explode('@?@', {Frases}); // o Sc usa o @?@ para separa as seleções.

// EXEMPLO DAS LINHAS:
for($j = 0; $j < count($selecionados); $j++){
   echo "Linha $j = $selecionados[$j] <br />";
}

break;
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

camilamoreirati

  • Intermediário
  • ***
  • Mensagens: 127
    • Email
Campo Duplo Select não efetua a contagem de posição corretamente!
« Responder #3 Online: Setembro 25, 2015, 06:03:22 pm »
Consegui.

Obrigada!
Att. Camila Moreira
Desenvolvedor WEB