Ir para conteúdo
Fórum Script Brasil

TioPhill

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre TioPhill

TioPhill's Achievements

0

Reputação

  1. Olá, gente. Sou novato em programação com Javascript, e há pouco tempo, criei um script para mostrar ou oucltar campos de formulário, de acordo com opções escolhidas em campos anteriores. E o script também pega essas opções e monta um texto, que aparece mais embaixo na página. Basicamente, selecionando opções, montar um texto. No Firefox e o google Chrome, o código funciona perfeitamente. Porém, tanto nas versões 6, 7 e 8 do Internet Explorer, quando é exibido os campos de id 'objeto_tse' e 'prazo_concedido_text', os campos do tipo text não aceitam que eu digite neles. Eles aparecem e somem a contento, de acordo com o script, mas não me deixam digitar nada neles. E o pior é que o depurador do Internet Explorer 8 não acusou erro nenhum. Eis o código html da página: <script src="./func_portarias.js" type="text/javascript"> </script> <form id="form1" name="form1" method="post" action="./index.php?item=portprocess"> <table width="515" border="0"> <tr> <td colspan="2"> <p><strong>O PREFEITO MUNICIPAL DE BIGUAÇU, no uso de suas atribuições, que lhe são conferidas pelo artigo 98 incisos I e VIII da Lei Orgânica do Município, <div id="secao_lei" style="display:inline;" >em conformidade com a Lei Nº <input class="nosize" type="text" name="numerolei" id="numerolei" onKeypress="escreveportaria_keypress();"/> ,</div> resolve baixar a seguinte Portaria:</strong><br> <input type="checkbox" name="checalei" id="checalei" value="66" onClick="mostralei();" onChange="mostralei();" checked>Mostrar lei</input></td> </tr> <tr> <td colspan="2"> <label>Número da Portaria: <input class="nosize" type="text" name="numeroportaria" id ="numeroportaria" onKeypress="escreveportaria_keypress();" /> </label></td> </tr> </table> <table width="515" border="0" id="form_opcao" style="display:inline;"> <tr> <td width="144"> <label>Ação:<br> <select class="nosize" name="acao" id="acao" size="10" onChange="mostra(); escreveportaria_keypress();"> <option value="ad">Admitir</option> <option value="aut">Autorizar</option> <option value="con">Conceder</option> <option value="dec">Declarar</option> <option value="des">Designar</option> <option value="ex">Exonerar</option> <option value="nom">Nomear</option> <option value="pro">Prorrogar</option> <option value="sus">Sustar</option> <option value="tse">Tornar sem efeito</option> </select> </label></td> <td width="361"><label><div id="k22" style="display:none; "> Objeto a conceder:</div><br> <select class="nosize" id="concess_objeto" style="display:none;" onChange="mostra(); escreveportaria_keypress();" name="concess_objeto" size="8"> <option value="exo">exoneração</option> <option value="fer">férias</option> <option value="gra">gratificação</option> <option value="lge">licença gestação</option> <option value="lmt">licença maternidade</option> <option value="lsv">licença sem vencimento</option> <option value="prz">o prazo de</option> <option value="rdf">readaptação de função</option> </select> </label> <label id="ato_autorizado" style="display:none; "> <select class="nosize" name="ato_autorizado" id="ato_autorizado_text" size="8"> <option value="cond">a conduzir veículos desta municipalidade</option> </select> <br> </label> <label id="tornado_sem_efeito" style="display:none;"> <select class="nosize" name="tornado_sem_efeito" id="tornado_sem_efeito_text" size="8"> <option value="port" selected>a portaria</option> </select> </label> </td> </tr> <tr> <td height="45" colspan="2"><label id="prazo_concedido" style="display:none;" onKeyPress="mostra(); escreveportaria_keypress();" onChange="mostra(); escreveportaria_keypress();">Objeto prorrogado:<br> <input class="nosize" type="text" id="prazo_concedido_text" name="prazo_concedido" size="65"onKeyPress="mostra(); escreveportaria_keypress();" onChange="mostra(); escreveportaria_keypress();"> </label> <label id="label_objeto_tse" style="display:none;"><br>Tornado sem efeito:</br> <input class="nosize" type="text" id="objeto_tse" onKeyPress="mostra(); escreveportaria_keypress();"> </label> </td> </tr> <tr> <td>Gênero:<br> <select class="nosize" name="genero" id="genero" size="4" onChange="escreveportaria_keypress();"> <option value="masc">o funcionário</option> <option value="fem">a funcionária</option> <option value="mascs">os funcionários</option> <option value="fems">as funcionárias</option> </select> </label></td> <td> </td> </tr> </table> <table width="515" border="0"> <tr> <td colspan="2"> <label>Nome do funcionário:<br> <input class="nosize" type="text" name="nome_func" id="nome_func" size="75" onKeyPress ="mostra(); escreveportaria_keypress();" onChange="mostra(); escreveportaria_keypress();"/> </label></td> </tr> </table> <table width="515" border="0" id="form_opcao2" style="display:inline;"> <tr> <td colspan="2"> <p> <label>Cargo:<br> <select class="nosize" name="cargo" id="cargo" size="5" onChange="escreveportaria_keypress();"> <option value="1">para ocupar o cargo comissionado de</option> <option value="2">ocupante do cargo efetivo de</option> <option value="3">ocupante do cargo em caráter temporário de</option> <option value="4">para ocupar o cargo efetivo de</option> <option value="5">ocupante do cargo em comissão de</option> </select> <br> </label></td> </tr> <tr> <td colspan="2"> <label>Nome do cargo:<br> <input class="nosize" type="text" name="cargoname" size="75" id="cargoname" onKeyPress="mostra(); escreveportaria_keypress();" onChange="mostra(); escreveportaria_keypress();"/> <br> </label></td> </tr> <tr> <td> <label> <select class="nosize" name="prazo" id="prazo" size="2" onChange="escreveportaria_keypress();"> <option value="prazode">pelo prazo de</option> <option value="partirde">a partir de</option> </select> <br> </label></td> <td> </td> </tr> <tr> <td colspan="2"> <label>Prazo:<br> <input class="nosize" type="text" name="partirde" id="partirde" onKeyPress="mostra(); escreveportaria_keypress();" onChange="mostra(); escreveportaria_keypress();"/> <br> </label></td> </tr> </table> <table width="515" border="0"> <tr> <td height="60" colspan="2"> <label> <div id="testeportaria"></div> </label></td> </tr> <tr> <td colspan="2"> <label><strong class="vermelho" >Escrever texto próprio de portaria.</strong> <input name="checacp" id="checacp" type="checkbox" value="42" onClick="mostra(); escreveportaria_keypress();" onChange="escreveportaria_keypress();"/> <br><br>(Caso as opções acima não consigam preencher a portaria.)</br> </label> <br /> <label id ="labelcasoparticular" style="display:none" ><strong>Escreva o texto:</strong> <strong class="italic">(para dar destaque a partes do texto, coloque-a entre colchetes [ ])</strong> <br> <textarea class="nosize" name="casoparticular" id="casoparticular" cols="75" rows="5" style="display:none" onChange="escreveportaria_keypress();" onKeyPress="escreveportaria_keypress();"></textarea> </label> <br /> <input type="hidden" name="portaria_envio" id="portaria_envio" /> <label>Enviar <input type="submit" name="button" id="button" value="Enviar" onClick="return checacampos();"/> </label></td> </tr> </table> </form> E eis o java script: function mostra() { document.getElementById('concess_objeto').style.display="none"; document.getElementById('k22').style.display="none"; document.getElementById('prazo_concedido').style.display="none"; document.getElementById('prazo_concedido_text').style.display="none"; document.getElementById('k22').style.display="none"; document.getElementById('label_objeto_tse').style.display="none"; document.getElementById('ato_autorizado').style.display="none"; document.getElementById('tornado_sem_efeito').style.display="none"; document.getElementById('objeto_tse').style.display="none"; if (document.getElementById('acao').value=="aut") { document.getElementById('ato_autorizado').style.display="inline"; } else if (document.getElementById('acao').value=="tse") { document.getElementById('tornado_sem_efeito').style.display="inline"; if(document.getElementById('tornado_sem_efeito_text').value=="port") { document.getElementById('label_objeto_tse').style.display="inline"; document.getElementById('objeto_tse').style.display="inline"; } } else if (document.getElementById('acao').value=="con" || document.getElementById('acao').value=="pro" || document.getElementById('acao').value=="sus") { document.getElementById('concess_objeto').style.display="inline"; document.getElementById('k22').style.display="inline"; document.getElementById('label_objeto_tse').style.display="none"; document.getElementById('k22').style.display="inline"; if (document.getElementById('concess_objeto').value=="prz") { document.getElementById('prazo_concedido').style.display="inline"; document.getElementById('prazo_concedido_text').style.display="inline"; } else { document.getElementById('prazo_concedido').style.display="none"; document.getElementById('prazo_concedido_text').style.display="none"; } } else if(document.getElementById('acao').value=="tse") { document.getElementById('label_objeto_tse').style.display="inline"; document.getElementById('prazo_concedido').style.display="none"; document.getElementById('concess_objeto').style.display="none"; } else { document.getElementById('concess_objeto').style.display="none"; document.getElementById('k22').style.display="none"; document.getElementById('prazo_concedido').style.display="none"; document.getElementById('k22').style.display="none"; document.getElementById('label_objeto_tse').style.display="none"; document.getElementById('ato_autorizado').style.display="none"; document.getElementById('tornado_sem_efeito').style.display="none"; } } function escreveportaria_keypress() { setTimeout("escreveportaria()", 1); } function escreveportaria() { var numerolei = valorcampo('numerolei'); var numeroportaria = valorcampo('numeroportaria'); var cont_div = document.getElementById('testeportaria'); var tag_strong = "<strong class=\"versalete\">"; var tag_strong_end = "</strong>"; var acao_num = numselect('acao'); var acao_text = pegaselect('acao'); var genero_text = pegaselect('genero'); var cargo_text = pegaselect('cargo'); var nome_func_text = valorcampo('nome_func'); var nome_cargo_text = valorcampo('cargoname'); var prazo_text = pegaselect('prazo'); var prazo_concedido_text = valorcampo('prazo_concedido_text'); var partirde_text = valorcampo('partirde'); var proprio_text = valorcampo('casoparticular'); if (document.getElementById('checacp').checked == false) { document.getElementById('labelcasoparticular').style.display="none"; document.getElementById('casoparticular').style.display="none"; document.getElementById('form_opcao').style.display="inline"; document.getElementById('form_opcao2').style.display="inline"; var tag_strong_alt = tag_strong; var tag_strong_end_alt = tag_strong_end; var concess_objeto_text = ""; var tse_text = ""; var tse_text_obj = ""; var ato_autorizado_text = ""; if (acao_num == "2" || acao_num== "7" || acao_num=="8" && acao_text != undefined) { var concess_objeto_text = pegaselect('concess_objeto'); genero_text = colocacrase(genero_text); var tag_strong_alt = tag_strong; var tag_strong_end_alt = tag_strong_end; } else if(acao_num == "7" && numselect('concess_objeto') == "6") { var tag_strong_alt = ""; var tag_strong_end_alt = ""; genero_text = " " + colocade(genero_text); } else if(acao_num == "1") { var ato_autorizado_text = ", " + pegaselect('ato_autorizado_text'); var tse_text = ""; var tag_strong_alt = tag_strong; var tag_strong_end_alt = tag_strong_end; } else if(acao_num == "9") { var ato_autorizado_text = ""; var tse_text = " " + pegaselect('tornado_sem_efeito_text'); var tse_text_obj = " " + valorcampo('objeto_tse'); var tag_strong_alt = tag_strong; var tag_strong_end_alt = tag_strong_end; } else { var concess_objeto_text = ""; genero_text = pegaselect('genero'); var ato_autorizado_text = ""; var tse_text = ""; var tse_text_obj = ""; var tag_strong_alt = tag_strong; var tag_strong_end_alt = tag_strong_end; genero_text = pegaselect('genero'); if(acao_num == "2" || acao_num== "7") { genero_text = colocacrase(genero_text); } prazo_concedido_text = ""; } cont_div.innerHTML = tag_strong + acao_text + tag_strong_end + " " + tag_strong_alt + concess_objeto_text + tag_strong_end_alt + " " + tse_text + tse_text_obj + prazo_concedido_text + " " + genero_text + " " + tag_strong + nome_func_text + tag_strong_end + ", " + cargo_text + " " + tag_strong + nome_cargo_text + tag_strong_end + ato_autorizado_text + " " + prazo_text + " " + partirde_text + "."; document.getElementById('portaria_envio').value = cont_div.innerHTML; } else { document.getElementById('labelcasoparticular').style.display="inline"; document.getElementById('casoparticular').style.display="inline"; document.getElementById('form_opcao').style.display="none"; document.getElementById('form_opcao2').style.display="none"; proprio_text = proprio_text.replace(/[[]/g, tag_strong); proprio_text = proprio_text.replace(/]/g, tag_strong_end); cont_div.innerHTML = proprio_text; document.getElementById('portaria_envio').value = cont_div.innerHTML; } } function pegaselect(campo) { var c_num = document.getElementById(campo).selectedIndex; if (c_num != "-1") { var c_text = document.getElementById(campo).options[c_num].text; } else { var c_text = ""; } return c_text; } function numselect(campo) { var c_num = document.getElementById(campo).selectedIndex; return c_num; } function valorcampo(campo) { var c_cam = document.getElementById(campo).value; return c_cam; } function colocacrase(texto) { if(texto.search("a ") != -1) { var texto_ = texto.replace("a ","à "); } if(texto.search("as ") != -1) { var texto_ = texto.replace("as ","às "); } if(texto.search("o ") != -1) { var texto_ = texto.replace("o ","ao "); } if(texto.search("os ") != -1) { var texto_ = texto.replace("os ","aos "); } if(texto == "") {texto_ = "";} return texto_; } function colocade(texto) { if(texto.search("a ") != -1) { var texto_ = texto.replace("a ","da "); } if(texto.search("as ") != -1) { var texto_ = texto.replace("as ","das "); } if(texto.search("o ") != -1) { var texto_ = texto.replace("o ","dos "); } if(texto.search("os ") != -1) { var texto_ = texto.replace("os ","dos "); } if(texto.search("à ") != -1) { var texto_ = texto.replace("à ","da "); } if(texto.search("às ") != -1) { var texto_ = texto.replace("às ","das "); } if(texto.search("ao ") != -1) { var texto_ = texto.replace("ao ","do "); } if(texto.search("os ") != -1) { var texto_ = texto.replace("aos ","dos "); } if(texto == "") {texto_ = "";} return texto_; } function mostralei() { if(document.getElementById('checalei').checked == true ) { document.getElementById('secao_lei').style.display="inline"; } else { document.getElementById('secao_lei').style.display="none"; } } function checacampos() { if (valorcampo('numeroportaria')=="") { alert("Preencha o número da portaria!"); return false; } else if(valorcampo('nome_func')=="") { alert("Preencha o nome do funcionário!"); return false; } else { return true; } } Desde já, obrigado pela ajuda!
×
×
  • Criar Novo...