Widget:Test: mudanças entre as edições

Ir para navegação Ir para pesquisar
sem sumário de edição
Sem resumo de edição
Sem resumo de edição
Linha 12: Linha 12:
             width: 100px;
             width: 100px;
             height: 100px;
             height: 100px;
            margin: 5px;
        }
        select {
             margin: 5px;
             margin: 5px;
         }
         }
Linha 21: Linha 24:
     <form id="mapForm">
     <form id="mapForm">
         <div id="mapTypeSelection">
         <div id="mapTypeSelection">
             <label><input type="radio" name="mapType" value="1" class="map-type"> Tipo de Mapa 1</label>
             <label for="mapType">Tipo de Mapa:</label>
             <label><input type="radio" name="mapType" value="2" class="map-type"> Tipo de Mapa 2</label>
             <select id="mapType">
            <label><input type="radio" name="mapType" value="3" class="map-type"> Tipo de Mapa 3</label>
                <option value="">Selecione um mapa</option>
                <option value="1">Mapa Vermelho</option>
                <option value="2">Mapa Verde</option>
                <option value="3">Mapa Roxo</option>
            </select>
         </div>
         </div>


         <div id="specificOptions" class="hidden">
         <div id="specificOptions" class="hidden">
             <!-- Opções específicas aparecerão aqui -->
             <label for="specificOption">Opções Específicas:</label>
            <select id="specificOption">
                <option value="">Selecione uma opção</option>
            </select>
         </div>
         </div>


Linha 54: Linha 64:
         };
         };


         document.querySelectorAll('.map-type').forEach(radio => {
         document.getElementById('mapType').addEventListener('change', function() {
            radio.addEventListener('change', function() {
            const selectedMapType = this.value;
                const selectedMapType = this.value;
            const specificOptionSelect = document.getElementById('specificOption');
                const optionsDiv = document.getElementById('specificOptions');
            const imageContainer = document.getElementById('imageContainer');
                const imageContainer = document.getElementById('imageContainer');
           
               
            specificOptionSelect.innerHTML = '<option value="">Selecione uma opção</option>';
                optionsDiv.innerHTML = '';
            imageContainer.innerHTML = '';
                imageContainer.innerHTML = '';
           
               
            if (selectedMapType) {
                if (selectedMapType) {
                const options = specificOptions[selectedMapType];
                    const options = specificOptions[selectedMapType];
                options.forEach(option => {
                    options.forEach(option => {
                    specificOptionSelect.innerHTML += `<option value="${option}">${option}</option>`;
                        optionsDiv.innerHTML += `
                });
                            <label>
                                <input type="radio" name="specificOption" value="${option}" class="specific-option"> ${option}
                            </label>
                        `;
                    });


                    optionsDiv.classList.remove('hidden');
                document.getElementById('specificOptions').classList.remove('hidden');
                }
            } else {
                  
                 document.getElementById('specificOptions').classList.add('hidden');
                 imageContainer.classList.add('hidden');
                 document.getElementById('imageContainer').classList.add('hidden');
             });
             }
         });
         });


         document.getElementById('specificOptions').addEventListener('change', function() {
         document.getElementById('specificOption').addEventListener('change', function() {
             const selectedOption = document.querySelector('input[name="specificOption"]:checked');
             const selectedOption = this.value;
             const imageContainer = document.getElementById('imageContainer');
             const imageContainer = document.getElementById('imageContainer');
              
              
Linha 87: Linha 92:
              
              
             if (selectedOption) {
             if (selectedOption) {
                 const optionValue = selectedOption.value;
                 const imageUrl = images[selectedOption];
                 if (images[optionValue]) {
                 if (imageUrl) {
                     imageContainer.innerHTML = `<img src="${images[optionValue]}" alt="${optionValue}">`;
                     imageContainer.innerHTML = `<img src="${imageUrl}" alt="${selectedOption}">`;
                     imageContainer.classList.remove('hidden');
                     imageContainer.classList.remove('hidden');
                 }
                 }
            } else {
                imageContainer.classList.add('hidden');
             }
             }
         });
         });
5 802

edições

Menu de navegação