Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Problema con una checkbox

    Ciao a tutti
    Sto avendo un problema con una checbox vi posto il code:

    codice HTML:
    <label for="newDatabase" class="checkbox"><span></span></label>
    <input id="newDatabase" name="new_database" type="checkbox">
    codice:
    let elNewDtb = $("input[name=new_database]");
    alert(elNewDtb.checked);
    come mai mi da "undefined" e non true o false?

    oppure ancora
    codice:
    let newDtb = 0;
    if(elNewDtb.checked == true) newDtb = "1";
    alert(newDtb);
    Mi da sempre "0" anche se e selezionato
    Ultima modifica di techno; 05-12-2024 a 12:54

  2. #2
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    416
    Hai dimenticato delle virgolette, prova cosi

    $("input[name='new_database']");

    Ciao
    Da un grande potere derivano grandi responsabilità

  3. #3
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,769
    Ciao, dalla sintassi mi pare jQuery, quindi elNewDtb è un oggetto jQuery e NON possiede la proprietà checked; per questo ti restituisce undefined.

    Due sono le cose:
    o selezioni l'elemento tramite i metodi classici in puro JavaScript, e quindi puoi accedere alla proprietà checked del relativo oggetto
    codice:
    let elNewDtb = document.querySelector("input[name=new_database]");
    console.log(elNewDtb.checked);
    o selezioni l'elemento tramite jQuery e ne verifichi la proprietà attraverso uno dei vari metodi jQuery:
    codice:
    console.log(
      $("input[name=new_database]").is(":checked"),  // true / false
      $("input[name=new_database]").prop('checked'), // true / false
      $("input[name=new_database]")[0].checked,     // true / false
      $("input[name=new_database]:checked").val(),   // on / undefined
      $("input[name=new_database]:checked").length,  // 1 / 0
    );
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  4. #4
    Quote Originariamente inviata da KillerWorm Visualizza il messaggio
    Ciao, dalla sintassi mi pare jQuery, quindi elNewDtb è un oggetto jQuery e NON possiede la proprietà checked; per questo ti restituisce undefined.

    Due sono le cose:
    o selezioni l'elemento tramite i metodi classici in puro JavaScript, e quindi puoi accedere alla proprietà checked del relativo oggetto
    codice:
    let elNewDtb = document.querySelector("input[name=new_database]");
    console.log(elNewDtb.checked);
    o selezioni l'elemento tramite jQuery e ne verifichi la proprietà attraverso uno dei vari metodi jQuery:
    codice:
    console.log(
      $("input[name=new_database]").is(":checked"),  // true / false
      $("input[name=new_database]").prop('checked'), // true / false
      $("input[name=new_database]")[0].checked,     // true / false
      $("input[name=new_database]:checked").val(),   // on / undefined
      $("input[name=new_database]:checked").length,  // 1 / 0
    );

    Hai perfettamente ragione che stupido, dovevo staccare per la stanchezza, è un oggetto che volevo che mi passasse.
    Ho risolto con "elNewDb[0]"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.