Ir para conteúdo
Fórum Script Brasil

fabiapo

Membros
  • Total de itens

    7
  • Registro em

  • Última visita

Sobre fabiapo

fabiapo's Achievements

0

Reputação

  1. Pessoal, Estou trabalhando um formulário trabalhando com abas. Existem 3 abas e seus respectivos campos: Aba A cnpj nome nome fantasia Aba B cep Aba C telefones No validate do formulário fiz da seguinte forma: $("#EnviaForm").validate({ rules: { txt_Cep: { required:true }, txt_Cnpj: { required:true, cnpj:true, minlength:11, digitsWithMask:true }, txt_NomeEmpresa: { required:true, minlength:3 }, txt_NomeFantasia: { required:true, minlength:3 } }, messages: { txt_Cep: { required: "Informe um CEP" }, txt_Cnpj: { required:"Informe um CNPJ", cnpj: "CNPJ inválido", minlength:"O CNPJ deve conter pelo menos 11 dígitos", digitsWithMask:"Informe apenas números" }, txt_NomeEmpresa: { required: "Informe o nome da empresa", minlength: "O nome da empresa deve conter pelo menos 3 dígitos" }, txt_NomeFantasia: { required: "Informe o nome fantasia", minlength: "O nome fantasia deve conter pelo menos 3 dígitos" } },//Se der erro de (this[0].form).validate, verifique se o campo está com ID. errorPlacement: function(error, element) { if (element.is("#txt_Cnpj") || element.is("#txt_NomeEmpresa") || element.is("#txt_NomeFantasia") || (element.is("#txt_Cep"))) { error.insertAfter(element.next()); } else { error.insertAfter(element); } } }); Porém, se um dos campos da aba B ou C e nenhum da aba A, preciso abrir a aba referenciando o id da aba que está com campo inválido. Caso contrário, permanece com o foco na aba atual. O plugin validate faz esta validação campo a campo. Como faço para mudar as abas de acordo com seus campos? Obrigada
  2. Engraçado é que este código funciona no FF 3 e no IE 7, mas estou com problemas no FF 2. Existe algum paleativo para funcionar nos 2 browsers? Obrigada!
  3. Segue o meu código completo para você entender: HTML página pai: <form action="<? echo $path_modulos_cmdb_html; ?>/tab_gerais/cep/cad_cep_bd.php" method="post" id="EnviaForm" name="EnviaForm"> <table class="bordasimples" style="width:100%"> <tr> <td colspan="5"></td> </tr> <tr> <td width="13%"></td> <td width="20%" colspan="4">C&oacute;digo CEP:<br> <input type="text" name="txt_CodigoCep" id="txt_CodigoCep" maxlength="9" size="9" tabindex="1" alt="Pressione F9 ou clique na lupa para consultar" title="Pressione F9 ou clique na lupa para consultar">&nbsp; <input type="image" tabindex="2" name="BuscaCep" id="BuscaCep" src="<? echo $path_img_html;?>/lupa.jpg" class="lupa" alt="Pressione F9 ou clique na lupa para consultar" title="Pressione F9 ou clique na lupa para consultar"/> </td> </tr> <tr> <td width="13%"></td> <td colspan="4">Endere&ccedil;o:<br> <input type="text" name="txt_Endereco" id="txt_Endereco" maxlength="100" size="60" tabindex="2"><br> </td> </tr> <tr> <td width="13%"></td> <td colspan="4">Bairro:<br> <input type="text" name="txt_Bairro" id="txt_Bairro" maxlength="70" size="50" tabindex="3"> </td> </tr> <tr> <td width="13%"></td> <td width="22%" colspan="2">UF:<br> <select name="cmb_Uf" id="cmb_Uf" tabindex="4"> <? //popula o combo com as UFs include "$path_includes_combo/cmb_uf.php"; ?> </select> </td> <td width="40%">Município:<br> <select name="cmb_Municipio" id="cmb_Municipio" tabindex="5"> <option value=''>Selecione</option> <? //populado via arquivo form_busca_cep.php ?> </select> <input type="hidden" name="hdn_Municipio" id="hdn_Municipio"/> </td> <td width="13%"></td> </tr> <tr> <td colspan="5"> <input type="hidden" name="hdn_acao" id="hdn_acao"> </td> </tr> </table> <table class="bordasimples" style="width:90%"> <tr> <td colspan="7"></td> </tr> <tr> <td width="25%"></td> <td width="14%">Identificador:<br><input type="text" id="txt_id_cep" name="txt_id_cep" class="disabled" disabled></td> <td width="8%"></td> <td width="18%"></td> <td ></td> <td width="7%"></td> </tr> <tr> <td></td> <td>Criado Por:<br><input type="text" id="txt_nm_usuario_inclusao" name="txt_nm_usuario_inclusao" class="disabled" disabled></td> <td></td> <td>Data de Cria&ccedil;&atilde;o:<br><input type="text" id="txt_dt_cep_inclusao" name="txt_dt_cep_inclusao" class="disabled" disabled></td> <td></td> </tr> <tr> <td></td> <td>Modificado Por:<br><input type="text" id="txt_nm_usuario_alteracao" name="txt_nm_usuario_alteracao" class="disabled" disabled></td> <td></td> <td>Data de Modifica&ccedil;&atilde;o:<br><input type="text" id="txt_dt_cep_alteracao" name="txt_dt_cep_alteracao" class="disabled" disabled></td> <td><br></td> </tr> <tr> <td colspan="5"></td> </tr> </table> </form> Script da página pai: window.PreencheMunicipio = function() { var val_uf = $(this).find(':selected').val(); var val_municipio = $("#hdn_Municipio").val(); //$("#cmb_Municipio").load('/fapsl/includes/combo/cmb_municipio.php?uf='+val_uf+'&municipio'); $("#cmb_Uf").change(); } //Ao mudar o combo de UF, popular $("#cmb_Uf").change( function(){ var val_uf = $(this).find(':selected').val(); var val_municipio = $("#hdn_Municipio").val(); $.post('/fapsl/includes/combo/cmb_municipio.php',{uf: val_uf, municipio: val_municipio}, function(resposta) { $("#cmb_Municipio").html(resposta); if (val_uf !='') { $("#cmb_Uf").valid(); } } ); } ); //Validar após selecionar registro $("#cmb_Municipio").change( function() { $("#cmb_Municipio").valid(); } ); HTML da página filha: popup <? session_start(); ob_start(); include "/var/www/fapsl/path.php"; include "$path_includes/conecta_bd.inc"; include_once "$path_includes/includePerdeSessao.php"; ?> <html> <head> <title>Consulta de CEPs</title> <script type="text/javascript" src="<? echo $path_jquery_html; ?>/jquery.js"></script> <script type="text/javascript" src="<? echo $path_jquery_html; ?>/jquery.alerts.js"></script> <script type="text/javascript" src="<? echo $path_jquery_html; ?>/jquery.tablesorter.js"></script> <script type="text/javascript" src="<? echo $path_modulos_html; ?>/script/form_ordenar.js"></script> <link rel="stylesheet" type="text/css" href="<? echo $path_css_html;?>/tabelas.css" /> <link rel="stylesheet" type="text/css" href="<? echo $path_css_html; ?>/jquery.alerts.css" /> </head> <body onUnload="java script:fecha();"> <div align="center"> <table class="tablesorter" width="80%" id="sort"> <? $num_cep=str_replace("-","",$_REQUEST["cep"]); $query="SELECT * FROM consulta_cep('$num_cep')"; $rs=pg_query($dbconn,$query); if ($rs) { if (pg_num_rows($rs)<>0) { ?> <thead> <tr> <th width="18%">Código CEP<img src="<? echo $path_img_html?>/setas_ordenacao.gif"/></th> <th>Endereço<img src="<? echo $path_img_html?>/setas_ordenacao.gif"/></th> <th width="20%">Bairro<img src="<? echo $path_img_html?>/setas_ordenacao.gif"/></th> <th width="20%">Municipio<img src="<? echo $path_img_html?>/setas_ordenacao.gif"/></th> <th width="8%">UF<img src="<? echo $path_img_html?>/setas_ordenacao.gif"/></th> </tr> </thead> <tbody> <? for($i=0; $i<pg_num_rows($rs); $i++) { $rs_fetch = pg_fetch_row($rs); $nr_cep=$rs_fetch[0]; $nr_cep_parte1 = substr($nr_cep, 0, 5); $nr_cep_parte2 = substr($nr_cep, 4, 3); $nr_cep = $nr_cep_parte1."-".$nr_cep_parte2; $id_cep=$rs_fetch[1]; $nm_logradouro=$rs_fetch[2]; $nm_bairro = $rs_fetch[3]; $id_municipio = $rs_fetch[4]; $nm_municipio = $rs_fetch[5]; $id_uf = $rs_fetch[6]; $nm_uf = $rs_fetch[7]; $dt_cep_inclusao=$rs_fetch[8]; $str_time=strtotime($dt_cep_inclusao); if (date(Y,$str_time)!='1969') $dt_cep_inclusao=date("d/m/Y G:i:s", $str_time); else { $dt_cep_inclusao=''; } $dt_cep_alteracao=$rs_fetch[9]; $str_time=strtotime($dt_cep_alteracao); if (date(Y,$str_time)!='1969') $dt_cep_alteracao=date("d/m/Y G:i:s", $str_time); else { $dt_cep_alteracao=''; } $nm_usuario_inclusao=$rs_fetch[10]; $nm_usuario_alteracao=$rs_fetch[11]; $id_usuario_inclusao=$rs_fetch[12]; $id_usuario_alteracao=$rs_fetch[13]; $str_parametros=$id_cep.',"'.$nr_cep.'",'.'"'.$nm_logradouro.'",'.'"'.$nm_bairro.'",'.'"'.$id_municipio.'",'.'"'.$nm_municipio.'",'.'"'.$id_uf.'",'.'"'.$nm_uf.'","'.$dt_cep_inclusao.'","'.$dt_cep_alteracao.'","'.$nm_usuario_inclusao.'","'.$nm_usuario_alteracao.'","'.$id_usuario_inclusao.'","'.$id_usuario_alteracao.'"'; echo "<tr>"; echo "<td>"; echo "<a href='' OnClick='cap_valores($str_parametros)' id='sigla_ug'>"; echo $nr_cep; echo "</a>"; echo "</td>"; echo "<td>"; echo $nm_logradouro; echo "</td>"; echo "<td>"; echo $nm_bairro; echo "</td>"; echo "<td>"; echo $nm_municipio; echo "</td>"; echo "<td>"; echo $nm_uf; echo "</td>"; echo "</tr>"; } } else { if(pg_num_rows($rs)==0) { $str_mensagem="A Consulta não trouxe registros"; $str_erro="Não há registros semelhantes na base"; echo "<script type='text/JavaScript'>"; echo "$(document).ready( function() {"; echo 'jAlert("'.$str_erro.'","'.$str_mensagem.'", function(resposta){ if (resposta==true) { window.close(); } });'; echo "}); </script>"; } } } else { $str_mensagem="Ocorreu um erro na consulta dos dados."; $str_erro = pg_last_error($dbconn); $str_erro = str_replace("'","",$str_erro); $str_erro = str_replace("\n","",$str_erro); echo "<script type='text/JavaScript'>"; echo "$(document).ready( function() {"; echo 'jAlert("'.$str_erro.'","'.$str_mensagem.'", function(resposta){ if (resposta==true) { window.close(); } });'; echo "}); </script>"; } ?> </tbody> </table> </div> </body> </html> Script da Página filha: popup function cap_valores(id_cep, int_cod_cep, str_endereco, str_bairro, int_cod_municipio, str_municipio, int_cod_uf, str_uf, dt_cep_inclusao, dt_cep_alteracao, nm_usuario_inclusao, nm_usuario_alteracao, id_usuario_inclusao, id_usuario_alteracao) { var str_municipio = int_cod_municipio + "_" + str_municipio; var str_uf = int_cod_uf + "_" + str_uf; window.opener.document.getElementById("hdn_acao").value="alt"; window.opener.document.getElementById("txt_CodigoCep").value=int_cod_cep; window.opener.document.getElementById("txt_Endereco").value=str_endereco; window.opener.document.getElementById("hdn_Municipio").value=str_municipio; window.opener.document.getElementById("txt_Bairro").value=str_bairro; window.opener.document.getElementById("cmb_Uf").value =str_uf; window.opener.PreencheMunicipio(); window.opener.document.getElementById("txt_id_cep").value=id_cep; window.opener.document.getElementById("txt_nm_usuario_inclusao").value=nm_usuario_inclusao; window.opener.document.getElementById("txt_dt_cep_inclusao").value=dt_cep_inclusao; window.opener.document.getElementById("txt_nm_usuario_alteracao").value=nm_usuario_alteracao; window.opener.document.getElementById("txt_dt_cep_alteracao").value=dt_cep_alteracao; window.close(); } function fecha() { var acao=window.opener.document.getElementById("hdn_acao").value; if (acao=='con') { window.opener.document.getElementById("hdn_acao").value = 'inc'; } } Muito obrigada!
  4. Foi definida via jquery: $("#cmb_Uf").change na página pai. Não estou mais chamando o evento onchange no popup. Só estou chamando a função PreencheMunicipio() que chama a função $("#cmb_Uf").change. Dei alert para verificar se os valores estavam chegando, chegaram, e mesmo assim quando chega na função $.post, os valores chegam em branco.
  5. Jonathan, Quando chamo a função PreencheMunicipio na página pai, eu chamo a função change do código UF de forma que possa ser chamada a função post. Meu sistema funciona assim: Quando eu identifico um único registro na base, eu o trago e não abro popup. Se tiver mais que um, abro o popup para que o usuário selecione um link. Neste link coloquei na função onclick a função cap_valores.: Segue o código do popup onde chamo meu evento: $str_parametros=$id_cep.',"'.$nr_cep.'",'.'"'.$nm_logradouro.'",'.'"'.$nm_bairro.'",'.'"'.$id_municipio.'",'.'"'.$nm_municipio.'",'.'"'.$id_uf.'",'.'"'.$nm_uf.'","'.$dt_cep_inclusao.'","'.$dt_cep_alteracao.'","'.$nm_usuario_inclusao.'","'.$nm_usuario_alteracao.'","'.$id_usuario_inclusao.'","'.$id_usuario_alteracao.'"'; echo "<tr>"; echo "<td>"; echo "<a href='' OnClick='cap_valores($str_parametros)' id='sigla_ug'>"; echo $nr_cep; echo "</a>"; echo "</td>"; O que é estranho é que dei um alert no evento change da página pai quando seleciono um item e os valores são repassados para os campos, mas quando chega na função $.post do jquery ele pára de funcionar. Mas isto só funciona quando tenho o popup, sem o popup o evento change funciona perfeitamente. Dou um alert antes de fechar o popup, depois ele fecha e não funciona o $.post. Será que tem algo a ver? Segue o script do popup: cap_valores(id_cep, int_cod_cep, str_endereco, str_bairro, int_cod_municipio, str_municipio, int_cod_uf, str_uf, dt_cep_inclusao, dt_cep_alteracao, nm_usuario_inclusao, nm_usuario_alteracao, id_usuario_inclusao, id_usuario_alteracao) { var str_municipio = int_cod_municipio + "_" + str_municipio; var str_uf = int_cod_uf + "_" + str_uf; window.opener.document.getElementById("hdn_acao").value="alt"; window.opener.document.getElementById("txt_CodigoCep").value=int_cod_cep; window.opener.document.getElementById("txt_Endereco").value=str_endereco; window.opener.document.getElementById("hdn_Municipio").value=str_municipio; window.opener.document.getElementById("txt_Bairro").value=str_bairro; window.opener.document.getElementById("cmb_Uf").value =str_uf; ; //$(opener.document.cmb_Uf).change(); window.opener.PreencheMunicipio(); window.opener.document.getElementById("txt_id_cep").value=id_cep; window.opener.document.getElementById("txt_nm_usuario_inclusao").value=nm_usuario_inclusao; window.opener.document.getElementById("txt_dt_cep_inclusao").value=dt_cep_inclusao; window.opener.document.getElementById("txt_nm_usuario_alteracao").value=nm_usuario_alteracao; window.opener.document.getElementById("txt_dt_cep_alteracao").value=dt_cep_alteracao; window.close(); } function fecha() // esta função está no evento unload da página popup { var acao=window.opener.document.getElementById("hdn_acao").value; if (acao=='con') { window.opener.document.getElementById("hdn_acao").value = 'inc'; } } Obrigada!
  6. Então, eu tentei desta forma, mas o firefox (console de erros) me retorna a seguinte mensagem: Erro: window.opener.document.getElementById("cmb_Uf").onchange is not a function Tentei chamar uma função na minha página que chamasse o evento change, mas por algum motivo, o meu combo não é populado apesar dos valores para que ele possa ser populado estão ok. Exemplo: POPUP: function cap_valores(id_cep, int_cod_cep, str_endereco, str_bairro, int_cod_municipio, str_municipio, int_cod_uf, str_uf, dt_cep_inclusao, dt_cep_alteracao, nm_usuario_inclusao, nm_usuario_alteracao, id_usuario_inclusao, id_usuario_alteracao) { var str_municipio = int_cod_municipio + "_" + str_municipio; var str_uf = int_cod_uf + "_" + str_uf; window.opener.document.getElementById("txt_CodigoCep").value=int_cod_cep; window.opener.document.getElementById("txt_Endereco").value=str_endereco; window.opener.document.getElementById("txt_Bairro").value=str_bairro; window.opener.document.getElementById("cmb_Uf").value =str_uf; window.opener.document.getElementById("hdn_Municipio").value=str_municipio; window.opener.document.getElementById("cmb_Municipio").value=str_municipio; window.opener.PreencheMunicipio(); window.opener.document.getElementById("hdn_acao").value="alt"; window.opener.document.getElementById("txt_id_cep").value=id_cep; window.opener.document.getElementById("txt_nm_usuario_inclusao").value=nm_usuario_inclusao; window.opener.document.getElementById("txt_dt_cep_inclusao").value=dt_cep_inclusao; window.opener.document.getElementById("txt_nm_usuario_alteracao").value=nm_usuario_alteracao; window.opener.document.getElementById("txt_dt_cep_alteracao").value=dt_cep_alteracao; window.close(); } Página pai: window.PreencheMunicipio = function() { $("#cmb_Uf").change(); } //Ao mudar o combo de UF, popular $("#cmb_Uf").change( function(){ var val_uf = $("#cmb_Uf").val(); var val_municipio = $("#hdn_Municipio").val(); if ((val_uf!='')) { $.post('/fapsl/includes/combo/cmb_municipio.php',{uf: val_uf, municipio: val_municipio}, function(resposta) { $("#cmb_Municipio").html(resposta); if (val_uf !='') { $("#cmb_Uf").valid(); } } ); } } ); Se efetuarmos a consulta sem o popup, ele retorna normalmente, via popup não chama a função change. Pelo que percebi os valores se perdem dentro do meu php. Alguém já viu um problema parecido? Obrigada!
  7. Pessoal, Alguém sabe como chamar um evento change que está em jquery na página pai a partir de um popup (página filha) em javascript? Tentei da seguinte forma: Página filha (POPUP) window.opener.document.getElementById("cmb_Uf").onchange; Página Pai (em jquery) $("#cmb_Uf").change( function(){ var val_uf = $("#cmb_Uf").val(); var val_municipio = $("#hdn_Municipio").val(); $.post('/fapsl/includes/combo/cmb_municipio.php',{uf: val_uf, municipio: val_municipio}); } ); Teoricamente estaria correto, mas no FF 2.0.0.11 não está funcionando mas também não apresenta nenhuma mensagem de erro. Alguém poderia me ajudar? Obrigada!
×
×
  • Criar Novo...