Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

nmoa

each

Recommended Posts

boa tarde
estou aqui com uma duvida em usar o each

tenho uma listagem onde cada linha ao carregar irá abrir uma pagina nova, cada linha tem um atributo associado
gostaria que no jquery ao carregar nessa linha ele soubesse qual o atributo

tenho feito assim

$(msg).each(function(){
                 for (var i = 0; i < this.attributes.length; i++) {
                         console.log(' Valor:' +this.attributes["data-id"].nodeValue);
                         var id=this.attributes["data-id"].nodeValue;

                 };
         //return false;
                 });

só que ele assim dá-me a listagem de todos os atributos, se coloco o return false ele só me dá o primeiro atributo...
sei que está a faltar alguma forma de poder tirar deste each apenas o valo clicado

obrigado
desde já pela ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá nmoa,
Não ficou claro o que você está pretendendo fazer.
Você diz que "cada linha tem um atributo associado". Então por que usar um each() pelos atributos se só existe um?
Explique melhor o que significa "onde cada linha ao carregar irá abrir uma pagina nova", pois carregamento de linha não abre página nova.
Você diz: "tirar deste each apenas o valo clicado". Há um clique em um valor? Não entendi como pode haver um clique em um valor.

Você está querendo saber o valor de um determinado atributo de um elemento HTML quando ele for clicado?
É isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ois, a minha ideia é quando carrego num produto ele me abra uma pagina com o detalhe desse produto

tenho o php assim :

$passagem= mysql_query ("SELECT * FROM passagem limit $inicio, $qnt ");
                    $passagem2= mysql_query ("SELECT * FROM passagem ");
                    $total_registros = mysql_num_rows($passagem2);
$pags = ceil($total_registros / $qnt);

while ($passa=mysql_fetch_array($passagem)){
    $emissor = mysql_query ("SELECT * from comercial where id_comercial=".$passa["id_emissor"]."");
    $emi = mysql_fetch_array($emissor);
    
    $comercial = mysql_query ("SELECT * from comercial where id_comercial=".$passa["id_comercial"]."");
    $comerc = mysql_fetch_array($comercial);
    echo' <tr class="message-unread" data-id="'.$passa["id_passagem"].'">
                    <td class="hidden-xs">
                      <label class="option block mn">
                        <input id="escolha" type="checkbox" name="mobileos" value="FR"><span class="checkbox mn"></span>
                      </label>
                    </td>                    
                    <td>'.$emi["nome"].'</td>                    
                    <td>'.$comerc["nome"].'</td>
                    <td class="text-center fw400">'.$passa["data"].'</td>
                  </tr> ';
    
}

depois em jquery quero que ele faça a fução do click para abrir através de um load o detalhe do produto

só que ele não esta a passar a variavel correcta.

 

jquery

  var msgListing = $('.panel > #message-table > tbody > tr > td');
       var msg= $('.panel > #message-table > tbody > tr ');
        var msgCheckbox = $('.panel > #message-table > tbody > tr input[type=checkbox]');
        // on message table checkbox click, toggle highlighted class
        msgCheckbox.on('click', function () {
          $(this).parents('tr').toggleClass('highlight');
        });
        // on message table row click, redirect page. Unless target was a checkbox
        
         msgListing.not(":first-child").on('click', function (e) {
          // stop event bubble if clicked item is not a checkbox
          e.stopPropagation();
          e.preventDefault();
         /*
         $(msg).each(function(){
         for (var i = 0; i < this.attributes.length; i++) {
                console.log(' Valor:' +this.attributes["data-id"].nodeValue);
                var id=this.attributes["data-id"].nodeValue;
                teste(id);
                return false;
            };*/
             console.log('Valor: ' + $(this).attr('data-id'));
        return false;
         });
});
         
     
          // Redirect to message compose page if clicked item is not a checkbox
          
      
  

      function teste (id){
          $(".panel").animate({opacity:0},'fast', function (){
              $(this).addClass("vazio");
              $(".panel2").load("cnt/msg.php?id="+id, function (){
                  $(this).fadeIn("fast");
              });
          });
          return false ;
      }

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Carcleo
      Estou começando no Laravel 11 e me deparei com um problema de belongsTo
       
      public function listOfClass(Request $request, StudentDisciplineClassroom $sdc) : ?string {         $all = $sdc::select('student')->with('studentRelation')->where('classroom',$request->classroom)->distinct('student')->get();     dd($all->toArray());     $students = [];     foreach ($all as $student) {             $students[] =$student;     }       return response()->json($students)->getContent();     } isso

      Em studentRelation temos na tabela StudentDisciplineClassroom com os campos

      id(chave primaria)
      ra (chave estrangera que referencia o campo academic_registration na tabela de students)

      e a tabela student tem os campos

      id (chave primária)
      academic_registration (que vai ser refeenciada na tabela StudentDisciplineClassroom

      Mas na hora de fazer
      $sdc::select('student')->with('studentRelation')->where('classroom',$request->classroom)->distinct('student')->get();
      O studentRelation retorna nulo

      Onde eu posso estar errando?
    • Por joao b silva
      Tenho uma pequena aplicação em php que gera arquivos pdf com a MPDF e envia email com a PHPMAILER. De repente a app parou de enviar os emails  e apresenta a seguinte mensagem de erro:
       
      Error PHPMailer: SMTP Error: Could not authenticate.
       
      Faço uso de um hotmail para a configuração do PHPMAILER.
    • Por violin101
      Caros amigos, saudações.
       
      Gostaria de tirar uma dúvida com os amigos.
       
      Quando programava em DOS. utilizava algumas teclas de atalho para: SALVAR / EDITAR / EXCLUIR / IMPRIMIR.
      Por exemplo:
      Salvar ----> ALT+S
      Editar ----> ALT+E
      Excluir --> ALT+X
      Imprimir -> ALT+I

      no PHP tem como colocar esses ATALHOS nos button, para o usuário trabalhar com esses atalhos e como seria ?

      grato,
       
      Cesar
    • Por violin101
      Caros Amigos, saudações.
       
      Por favor, me perdoa em postar uma dúvida.
       
      Preciso criar uma Rotina onde o usuário possa buscar na Base de Dados de Produtos, tanto por Código e Descrição, ou seja:
      - caso o usuário digita o Código, mostra os dados do Produto.
      - caso o usuário digita a Descrição, mostra os dados do Produto
       
      Fiz uma Rotina, onde o usuário digita a DESCRIÇÃO com a função AUTOCOMPLETE.    <=== está funcionando certinho.
       
      Minha dúvida é como faço para DIGITAR o Código e mostrar os dados também.
       
      o meu AutoComplete na MODEL está assim.
      public function autoCompleteProduto($q){ $this->db->select('*' ) ->from('produtos') ->where('produtos.statusProd',1) ->like('descricao', $q) ->limit(5) ->order_by('descricao', 'ASC'); $query = $this->db->get(); if ($query->num_rows() > 0) { foreach ($query->result_array() as $row) { $row_set[] = ['label' => str_pad($row['idProdutos'], '5', '0', STR_PAD_LEFT).' - '.$row['descricao'], 'id' => $row['idProdutos'], 'descricao' => $row['descricao'], 'cod_interno' => $row['cod_interno'], 'prd_unid' => $row['prd_unid'], 'estoque_atual' => $row['estoque_atual'] ]; } echo json_encode($row_set); } }  
       
      no CONTROLLER está assim:
      public function autoCompleteProduto() { $this->load->model('estoque/lancamentos_model'); if (isset($_GET['term'])) { $q = strtolower($_GET['term']); $this->lancamentos_model->autoCompleteProduto($q); } }  
       
      na VIEW está assim:
      <div class="col-md-10"> <label for="idProdutos">Produto:</label> <input type="hidden" name="idProdutos" id="idProdutos"> <input type="text" class="form-control" id="descricao" name="descricao" style="font-size:15px; font-weight:bold;" placeholder="Pesquisar por descrição do produto" disabled> </div>  
      VIEW + JAVASCRIPT
       
      //Função para trazer os Dados pelo o AutoComplete. function resolveAutocomplete() { $("#descricao").autocomplete({ source: "<?php echo base_url(); ?>estoque/lancamentos/autoCompleteProduto/", minLength: 2, select: function (event, ui) { $("#idProdutos").val(ui.item.id); $("#cod_interno").val(ui.item.cod_interno); $("#descricao").val(ui.item.descricao); $("#prd_unid").val(ui.item.prd_unid); $("#estoque_atual").val(ui.item.estoque_atual); $("#qtde").focus(); } }); } // inicia o autocomplete resolveAutocomplete();  
      Grato,
       
      Cesar
    • Por belann
      Olá!
       
      Estou tentando criar um projeto laravel e está dando o seguinte erro 
      curl error 60 while downloading https://getcomposer.org/versions: SSL certificate problem: unable to get local issu
        er certificate
      Já tentei atualizar o composer, mas dá o mesmo erro acima.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.