- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bom dia!
Eu utilizo bootstrap e não estou conseguindo capturar um atributo de uma litsview que estou criando. Onde estou fazendo errado conforme meu código abaixo:
$.each(registros, function(c, clientes){
// Montar linha do relatório (item)...
var item = '<ul class="list-group" >' +
'<li class="list-group-item">' +
'<span class="badge">' + clientes.codigo + '</span>' +
'<h3>' + clientes.razao_social + '</h3>' +
'<p><h4>' + clientes.fantasia + '</h4></p>' +
'<p><h4>' + clientes.cnpj_cpf + '</h4></p>' +
'<data-codigo="'+clientes.codigo+'">' +
'</li>' +
'<ul>';
alert("atributo : " + $(item).attr('data-codigo')); // sempre está retornando nul
$("#lvClientes").append(item);
}
O retorno sempre é nulo, já testei de várias formas e não consegui êxito. );
Se alguém puder me ajudar ficaria grato.
Rafael Moroni
- Tags:
- HTML5
- Intel® XDK
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Rafael,
You are trying to get the attribute with jquery from a javascript variable:
$(item).attr('data-codigo')
item is not a DOM element.
Is not clear to me your intention, at the place of the alert() you can use the value of clientes.codigo
Regards
Diego
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
data-codigo is not an atrribute but instead a DOM element. In order to access this element, use this line $(li > data-codigo).
You find more information on jQuery find and get methods at http://www.w3schools.com/jquery/traversing_find.asp.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Olá,
obrigado pelas respostas. Irei verificar onde está o problema.
Abraços
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Olá,
na verdade o que eu preciso é do seguinte:
/* listitem #liComClientes */ $(document).on("click", "#liComClientes", function(evt){ // Selecionar todos os registros de clientes... dao.selectAll("clientes", function(registros){ // Limpar relatório (lvClientes)... $("#lvClientes").empty(); // Percorrer CADA registro encontrado... $.each(registros, function(c, clientes){ // Montar linha do relatório (item)... var item = '<ul class="list-group" >' + '<li class="list-group-item">' + '<span class="badge">' + clientes.codigo + '</span>' + '<h3>' + clientes.razao_social + '</h3>' + '<p><h4>' + clientes.fantasia + '</h4></p>' + '<p><h4>' + clientes.cnpj_cpf + '</h4></p>' + '<data-codigo="'+clientes.codigo+'">' + '</li>' + '<ul>'; $("#lvClientes").append(item); ); // Ir para tela de relatório... activate_page("#pgComercialClientes"); } ); } ); /* listitem #lvClienteso > li */ $(document).on("click", "#lvClientes", function(evt){ // Capturar o código do cliente clicado... var codigo = $(this).attr("data-codigo"); // Montar SQL pra buscar dados do cliente no banco de dados.. var sql = "select * from clientes where codigo = " + codigo; // Buscando os dados na tabela... dao.query(sql, function(registros){ // Validar registro do cliente... if(registros.rows.length>0){ // Capturando dados retornado... var clientes = registros.rows.item(0); // Carregar detalhes do cliente (página #pgComCliDetalhes)... $("#detalhesCliente").parent().find(".formGroupHead").text(clientes.razao_social.toUpperCase()); $("#clienteFantasia").text(clientes.fantasia); $("#clienteCNPJCPF").text(clientes.cnpj_cpf); activate_page("#pgComCliDetalhe"); }else{ navigator.notification.alert("Nenhum registro encontrado.","INFORMAÇÃO",null,"OK"); } }); });
quando eu clico na ListView o resultado da linha 34 é null
var codigo = $(this).attr("data-codigo");
Me desculpem, sou iniciante em HTML/Javascript, mas eu não consegui resolver este meu problema.
Abraços,
Rafael Moroni
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Rafael,
Seems that jquery doesn't get data-codigo as <li> item attribute, try modifying line 13 like this:
'<li class="list-group-item" data-codigo="'+clientes.codigo+'">'
And remove line 18.
Regards,
Diego
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oi Diego,
esta tentativa eu já tinha realizado, não funcionou.
Rafael
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page