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

Sistema com PHP + JavaScript


Martinsrj

Pergunta

Olá pessoal, boa noite!

Estou dando uma manutenção em sistema onde estou sendo requisitado em inserir novas checkbox.

Consegui numa boa inserir um item chamado: Claro NO, porem quando insero outro, exemplo: ABS Brasil Porto Alegre - RS a combobox carrega vazia.

Segue abaixo o meu código JS:

/*

*/

//desabilita o botao voltar
window.history.go(1);

var globSelecionada = new String;
//variavel com nome das regionais selecionadas seperadas por |

var regionaisid = new Array(1,11,2,3,4,5,12,6,7,8,9,10,13,14);
var regionaistx = new Array('Todas','ACS Barão Geraldo','BC MACAÉ','Claro BA/SE/MG','Claro CO','Claro NE','BC Ribeirão Preto','Claro PR/SC','Claro RJ/ES','Claro RS','Claro SP1','Claro SP2','BC Juiz de Fora','Claro NO');
//conteudo estatico das regionais

function validaRegional(){
    if( globSelecionada == "" ) return false;
    if( globSelecionada != "Todas" && document.getElementById('site').selectedIndex == 0 ) return false;

    return true;
}

function validaFormNovoChamado(){
    if( !validaRegional() ){
        alert("Preencha a regional e site corretamente.");
        return false;
    }

    if( document.forms[0].chamado.value.length <1 ){
        alert("Preencha o número do chamado.");
        return false;
    }

    return true;
}

function mostraSiteTodos(){
    limpaSite();
    document.getElementById('site').options[0] = new Option('','',false,false);
    document.getElementById('site').options[1] = new Option('Todos','Todos',true,true);
    document.getElementById('site').selectedIndex = 1;
    document.getElementById('site').disabled = true; //disabled não posta
}

function mostraSite(sq_regional){
    //mostra o combo de site e dá refresh no iframe para montar os itens do combo
    limpaSite();
    document.getElementById('site').options[0] = new Option('CARREGANDO SITES ' + globSelecionada.toUpperCase(),'AGUARDE',true,true);
    document.getElementById('site').disabled = true;
    if( typeof no_site_selecionado == 'undefined' ){
        document.getElementById('siteiframe').src = 'consultaSites.php?r=' + sq_regional;
    }else{
        document.getElementById('siteiframe').src = 'consultaSites.php?r=' + sq_regional + '&s=' + no_site_selecionado;
    }
}

function limpaSite(){
    //limpa o combo de sites
    for(;document.getElementById('site').length;){
        document.getElementById('site').options[0] = null;
    }    
}

function limpaRegionais(){
    for(i=1;i<11;i++){
        document.getElementById('regional' + i).checked = false;
        document.getElementById('regional' + i).disabled = false;
        document.getElementById('lregional' + i).disabled = false;
    }
}

function regionaltodas(){
    //chamada qd clica na regional Todas
    //marca e desabilita as checkboxes e labels de todas as regionais, mostra o item de site Todos
    for(i=1;i<=regionaisid.length-1;i++){
        regionaisid[i] = regionaisid[i] + ''; //char
        document.getElementById('regional' + regionaisid[i]).checked = document.getElementById('regional1').checked;

        if(document.getElementById('regional1').checked){
            document.getElementById('regional' + regionaisid[i]).disabled = true;
            document.getElementById('lregional' + regionaisid[i]).disabled = true;
        }else{
            document.getElementById('regional' + regionaisid[i]).disabled = false;
            document.getElementById('lregional' + regionaisid[i]).disabled = false;
        }
    }

    if(document.getElementById('regional1').checked){
        mostraSiteTodos();
        globSelecionada = 'Todas';
    }else{
        limpaSite();
        globSelecionada = '';
    }
}

function clicaregional(){
    //chamada qd clica em uma regional
    //mostra o combo sites e monta ele em consulta ao iframe
    var qts = 0;
    var selecionada = new String;
    var selecionadaTx = new String;
var regionaisid = new Array(1,11,2,3,4,5,12,6,7,8,9,10,13,14);
var regionaistx = new Array('Todas','ACS Barão Geraldo','BC MACAÉ','Claro BA/SE/MG','Claro CO','Claro NE','BC Ribeirão Preto','Claro PR/SC','Claro RJ/ES','Claro RS','Claro SP1','Claro SP2','BC Juiz de Fora','Claro NO');

    for(i=1;i<=regionaisid.length-1;i++){
        if( document.getElementById('regional' + regionaisid[i]).checked ){
            selecionada = regionaisid[i];
            if(qts==0){
                selecionadaTx = regionaistx[i];
            }else{
                selecionadaTx = selecionadaTx + ' | ' + regionaistx[i];
            }
            qts++;
        }
    }
    if(qts==0){
        globSelecionada = '';
        limpaSite();
        document.getElementById('site').disabled = true;
    }else{
        globSelecionada = selecionadaTx;
        if(qts==1){
            mostraSite(selecionada);
        }else{
            if(qts==regionaisid.length - 1){
                //se estiverem todas marcadas, marca a regional Todas
                //evita que um louco saia marcando tudo ao invés de Todas
                document.getElementById('regional1').checked = true;
                regionaltodas();
            }else{
                mostraSiteTodos();
            }
        }
    }
}
Aqui está o código onde o usuario para abrir o novo chamado é executado o código abaixo: novoChamdo.php
<?php
require_once 'autenticacao.php';
require_once 'morrer.php';
header("Content-Type: text/html; charset=utf-8");

if(!temPerfil('novoChamado')){
    morrer('Acesso negado.');
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>

<head>
    <title>MTI - Novo chamado</title>
    <link rel="stylesheet" href="css/mti.css" type="text/css">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script type="text/javascript" src="js/mti.js"></script>
    <script type="text/javascript" src="js/form.js"></script>
    <script type="text/javascript">
        function foca(){
        document.forms[0].chamado.focus();
        }
    </script>
<style type="text/css">
<!--
body {
    background-color: #FFFFFF;
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
}
.style1 {color: #FFFFFF}
.style3 {color: #666666}
-->
</style></head>

<body onLoad="foca()">

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="24%" height="30" bgcolor="#CC0000"><div align="center" class="titulo style1">Chamado</div></td>
    <td width="69%" bgcolor="#CC0000">&nbsp;</td>
    <td width="7%" bgcolor="#CC0000"><div align="center"><a href="java script:window.close()"><img src="IMAGEM/quadrinho.gif" width="17" height="17"></a></div></td>
  </tr>
</table><table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td height="8" bgcolor="#CED0C4"></td>
  </tr>
</table>


<iframe src="" id="siteiframe" style="display: none;"></iframe>

<form method="post" action="novoChamado2.php" onSubmit="return validaFormNovoChamado()">
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" >
<tr>
        <td width="167" class="rotulo style3" style="width: 80px;">Chamado:
      <td width="821" class="campo" style="width: 320px;"><input type="text" name="chamado" size="8" maxlength="8" class="campotexto">
    <tr>
        <td colspan=2 class="rotulo style3">Regional:
    <tr>
        <td class="campo" colspan=2>
            <div style="width: 50%; float: left;">
                <input type="checkbox" name="regional[1]" id="regional1" value=1 onClick="return regionaltodas()">
                    <label for="regional1" id="lregional1">Todas</label><br>
                <input type="checkbox" name="regional[11]" id="regional11" value=1 onClick="return clicaregional()">
                    <label for="regional11" id="lregional11">ACS Barão Geraldo</label><br>
                <input type="checkbox" name="regional[2]" id="regional2" value=1 onClick="return clicaregional()">
                    <label for="regional2" id="lregional2">BC Macaé</label><br>
                <input type="checkbox" name="regional[3]" id="regional3" value=1 onClick="return clicaregional()">
                    <label for="regional3" id="lregional3">Claro BA/SE/MG</label><br>
                <input type="checkbox" name="regional[4]" id="regional4" value=1 onClick="return clicaregional()">
                    <label for="regional4" id="lregional4">Claro CO</label><br>
                <input type="checkbox" name="regional[5]" id="regional5" value=1 onClick="return clicaregional()">
                    <label for="regional5" id="lregional5">Claro NE</label><br>
                <input type="checkbox" name="regional[14]" id="regional14" value=1 onClick="return clicaregional()">
                    <label for="regional14" id="lregional14">Claro NO</label><br>
                <input type="checkbox" name="regional[12]" id="regional12" value=1 onClick="return clicaregional()">
                    <label for="regional12" id="lregional12">BC Ribeirão Preto</label><br>
            </div>
            <div style="width: 50%; float: right;">
                <input type="checkbox" name="regional[6]" id="regional6" value=1 onClick="return clicaregional()">
                    <label for="regional6" id="lregional6">Claro PR/SC</label><br>
                <input type="checkbox" name="regional[7]" id="regional7" value=1 onClick="return clicaregional()">
                    <label for="regional7" id="lregional7">Claro RJ/ES</label><br>
                <input type="checkbox" name="regional[8]" id="regional8" value=1 onClick="return clicaregional()">
                    <label for="regional8" id="lregional8">Claro RS</label><br>
                <input type="checkbox" name="regional[9]" id="regional9" value=1 onClick="return clicaregional()">
                    <label for="regional9" id="lregional9">Claro SP1</label><br>
                <input type="checkbox" name="regional[10]" id="regional10" value=1 onClick="return clicaregional()">
                    <label for="regional10" id="lregional10">Claro SP2</label><br>
                <input type="checkbox" name="regional[13]" id="regional13" value=1 onClick="return clicaregional()">
                    <label for="regional13" id="lregional13">BC Juiz de Fora</label><br>
            </div>
    <tr>
        <td class="rotulo">Site:
        <td class="campo">
            <select name="site" id="site" class="campocombo" style="width: 250px;">
            </select>
    <tr>
      <td height="50" colspan=2 valign="bottom">
          
        <div align="left">
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <input type="submit" value="Enviar" class="botao">
  
  &nbsp;
  <input type="reset" border="0" value="Cancelar" name="cancelar" class="botao"> 
        </div>
    </table>
</form><table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td height="20" bgcolor="#CC0000"><div align="right"></div></td>
  </tr>
</table>


</body>

</html>

o usuario seleciona uma checkbox e na combo box carrega os itens relacionado, porem quando clica no item: ABS Brasil Porto Alegre - RS a combobox desabilita

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...