Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

81
Vistas
Estoy tratando de crear casillas de verificación a partir de una matriz y hacer que las casillas cambien diariamente

Soy nuevo aquí y si cometo algún error pido disculpas. Actualmente tengo un problema con mi JS, el código se ejecuta correctamente como una lista, pero cuando cambio las etiquetas <ul> y <li> para convertirlo en una entrada y casillas de verificación, se muestra el campo de entrada pero no hay No hay casillas de verificación y la lista desaparece. Mi próximo paso es hacer que la lista cambie diariamente, según la matriz, pero ni siquiera puedo hacer que las casillas de verificación se carguen primero.

 const dailyTasks = [ set0 = ['Take the trash out', 'Check dishwasher', 'Let Daki out', 'Check indeed', 'Check email'], set1 = ['Check for milk', 'Check for coffee creamer'], set2 = ['Make tea', 'Go to bed early'], set3 = ['Apply for software jobs'], set4 = ['Check schedule at work', 'Check bank account', 'Pay bills'], set5 = ['Go to Chiropractor', 'Guild WvW night'], set6 = ['Work on coding projects, like this one', 'Do things with NODE'], set7 = ['Laundry', 'Movie night', 'Continue coding projects'] ] function makeDailyList(array) { let list = document.createElement('ul'); for (let i = 0; i < array.length; i++) { item.appendChild(document.createTextNode(array[i])); list.appendChild(item); } return list; } document.getElementById("list").appendChild(makeDailyList(dailyTasks[0])); makeDailyList(dailyTasks.set0); /* makeDailyList(dailyTasks.set1); makeDailyList(dailyTasks.set3); makeDailyList(dailyTasks.set4); makeDailyList(dailyTasks.set5); makeDailyList(dailyTasks.set6); makeDailyList(dailyTasks.set7); */

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Problemas

La matriz de entrada era sintácticamente incorrecta. Si es una matriz de matrices (también conocida como matriz 2D), entonces las claves set1,...setN no existen. Las matrices no tienen claves que sean cadenas como "set1" : las matrices tienen números reales para las claves que se denominan índices, comenzando en 0. Además, si esa matriz de matrices fuera una matriz de objetos, esas claves serían válidas si tuvieran dos puntos. : en lugar de = .

 let wrong = [invalid = ['not', 'right'],...] let correct = [['this', 'is', 'correct'],...]

En la función makeDailyList(array) , nunca se creó ninguno de los <li> y el <ul> nunca se agregó al DOM. Además, cuando se refiera a uno de los subconjuntos de dailyTasks use la notación de paréntesis de índice:

 // Get the 4th sub-array let fourth = dailyTasks[3] // Remember, arrays start at 0 index // So the fourth sub-array at index 3 is: ['Apply for software jobs'] 

 const dailyTasks = [ ['Take the trash out', 'Check dishwasher', 'Let Daki out', 'Check indeed', 'Check email'], ['Check for milk', 'Check for coffee creamer'], ['Make tea', 'Go to bed early'], ['Apply for software jobs'], ['Check schedule at work', 'Check bank account', 'Pay bills'], ['Go to Chiropractor', 'Guild WvW night'], ['Work on coding projects, like this one', 'Do things with NODE'], ['Laundry', 'Movie night', 'Continue coding projects'] ] function makeDailyList(array) { let list = document.createElement('ul'); for (let i = 0; i < array.length; i++) { let item = document.createElement('li'); let chx = document.createElement('input'); chx.setAttribute('type', 'checkbox'); item.append(chx); item.appendChild(document.createTextNode(array[i])); list.appendChild(item); /* comment out the next line if you want the list to be elsewhere */ document.body.append(list); } /* uncomment the next line if you want to add theb list somewhere else. */ // return list; } /* Comment this line if you want to add the list elsewhere */ makeDailyList(dailyTasks[4]); /* Uncomment the next lines if you want the list added elsewhere */ // const list = makeDailyList(dailyTasks[4]); // document.querySelector('fieldset').append(list);
 <fieldset></fieldset>

Por cierto, en la pregunta mencionaste que lo hiciste funcionar excepto por las casillas de verificación:

  1. Tal como está el código OP ahora, me resulta difícil creer que algo realmente funcionó.
  2. No hay evidencia de ningún intento de crear, modificar o agregar ninguna <input> en absoluto. Agregue esa parte del código también, ya que no tengo idea de dónde quiere las casillas de verificación. Probablemente asumo que las casillas de verificación deben agregarse a cada <li> . También espero texto y tal vez algunos elementos adicionales que probablemente no sean necesarios.
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda