Autor Tema: obtener elementos como array y asignar valores JQUERY  (Leído 3358 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
obtener elementos como array y asignar valores JQUERY
« : enero 03, 2020, 02:27:07 pm »
hey marachitos, tengo una tabla con td de id similar
Código: [Seleccionar]
[table]
[tr]
[td id="aa_xx"][/td]
[td id="aa_yy"][/td]
[td id="aa_zz"][/td]
[/tr]
[/table]
1- quiero crear un array con todos esos TD que su ID inicia con "aa_"
2- quiero saber/separar el nombre del ID, tener la parte que está a la derecha de "aa_", osea "xx", "yy" y "zz"
y luego pasarle los valores de un JSON cuyo nombre tiene algo similiar

Código: [Seleccionar]
$("#ID_parteDerechaNombre").text(JSON.parteDerechaNombre)

me explico?
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado rdoggsv

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 6531
  • "Once you go arch , u never go back"
    • SV CommunitY
Re:obtener elementos como array y asignar valores JQUERY
« Respuesta #1 : enero 04, 2020, 09:26:15 am »
Proba con algo así y mira si te funciona

Código: [Seleccionar]
jsonData = {
  "xx": "Hola",
  "yy": "SV",
  "zz": "Community"
};

$(document).ready(function(){
  $("td[id*=aa_]").each((index, item) => {
    $(item).text(jsonData[item.id.split("_").pop()]);
  });
});

No tenes la posibilidad de generar el texto de cada elemento desde antes? Eso de andar buscando ids en elementos y luego cambiandoles el texto requiere bastante mantenimiento. De seguro podes hacer el fetch del json desde el backend y cuando haces el render del view mandarlo ya con la información o algo parecido.
« Última Modificación: enero 04, 2020, 09:36:53 am por rdoggsv »

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:obtener elementos como array y asignar valores JQUERY
« Respuesta #2 : enero 07, 2020, 02:09:08 pm »
Proba con algo así y mira si te funciona

Código: [Seleccionar]
$(document).ready(function(){
  $("td[id*=aa_]").each((index, item) => {
    $(item).text(jsonData[item.id.split("_").pop()]);
  });
});

No tenes la posibilidad de generar el texto de cada elemento desde antes?

la verdad debería funcionar, pero mejor voy a hacerlo antes, tal como lo mencionas.... yo  porque es un modal que en su show.bs.modal es que hacía la petición y ahí estaba manipulando el json.
pero mejor que la petición me recree las 3 tablas
es la información de un cliente que he separado en tres tablitas por prsentación y quería encontrar una forma de que mi json se acoplara al frontend, pero mejor que el  backend le de todo ya
Gracias mi admin  :)
no siempre la respuesta que uno busca es la correcta
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito