2017-09-16 18 views
0

Ich habe Liste Eingang Checkboxjquery Checkbox get Wert Texteingabe

<input type="checkbox" name="id_image" value="homies_01" class="id_image" /> 
 
<input type="checkbox" name="id_image" value="homies_02" class="id_image" /> 
 
<input type="checkbox" name="id_image" value="homies_03" class="id_image" /> 
 

 
<input type="text" name="id_image" value="" class="id_image_check" />

Wie checkbox mehrere Eingabe überprüfen i zeigen Wert müssen input type="text" als

<form> 
 
<input type="text" name="id_image" value="homies_01, homies_02, homies_03" class="id_image_check" /> 
 
</form>

+0

Es beantwortet hier: https://stackoverflow.com/questions/2834350/get-checkbox- value-in-jquery – Kamotho

Antwort

1

Es gibt eine perfecly Lösung mit Vanilla Javascript

function attachListeners() { 
    var checkboxes = document.getElementsByClassName('id_image') 

    for (var i = 0; i < checkboxes.length; i++) { 
     checkboxes[i].addEventListener('click', getAndPutValues, false); 
    } 
} 

function getAndPutValues() { 
    var result = []; 
    document.querySelectorAll(".id_image:checked").forEach(function(item) { result.push(item.value);}); 

    document.querySelector('.id_image_check').value = result.join(', '); 
} 

attachListeners(); 
+0

Große Unterstützung! Danke @Henrique – DinhTv

+0

'.map (item => item.value)' ... –

1

Mit jquery

$(".id_image").on("click",function(){ 
    $(".id_image_check").val(
    $(".id_image :checked").map((i,el) => el.value).join(", ") 
) 
}); 
+0

https://jsfiddle.net/gerhcm9c/. @Jons ich habe Checkbox aber nicht Wert auf Eingabe? Irgendwelche um mir zu helfen? – DinhTv

-1

Verwenden Sie einfach eckige Klammern [] am Ende des Namens, wenn Sie es mit dem Formular oder verwenden Sie die folgende Methode in jQuery zu erhalten Werte von mehreren ausgewählten Kontrollkästchen einreichen möchten.

$('#show').click(function(){ 
 
    values = ""; 
 
    $('input.id_image:checked').each(function(){ 
 
    values += $(this).val() + " "; 
 
    }); 
 
    if(values){ 
 
    $('#values').html(values); 
 
    }else{ 
 
    $('#values').html("None"); 
 
    } 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="checkbox" name="id_image[]" value="homies_01" class="id_image" /> Homies 1 
 
<input type="checkbox" name="id_image[]" value="homies_02" class="id_image" /> Homies 2 
 
<input type="checkbox" name="id_image[]" value="homies_03" class="id_image" /> Homies 3 
 

 
<br> 
 
<button id="show">Show</button> 
 

 
<br> 
 
<div id="values"></div>

+0

So erhalten Sie einen Wert bis zum Eingabetext Keine Anzeige per Schaltfläche. Irgendwelche für mich helfen? – DinhTv

+0

@DinhTv hat meinen Code bearbeitet ... Fragen Sie nach sowas? Überprüfen Sie –

0

Zunächst einmal sollten Sie Array-Notation für Checkbox Namen

<input type="checkbox" name="id_image[]" value="homies_01" class="id_image" /> 
<input type="checkbox" name="id_image[]" value="homies_02" class="id_image" /> 
<input type="checkbox" name="id_image[]" value="homies_03" class="id_image" /> 

Es Sie gleichzeitig mehrere Werte schreiben helfen verwenden

Danach für Werte bei der Prüfung jQuery können Sie

verwenden
<script type="text/javascript"> 
    $('[name="id_image[]"]').click(function(){ 
     var value = ''; 
     $('[name="id_image[]"]:checked').each(function(){ 
      value += $(this).val(); 
     }); 

     $('#id_image_check').val(value); 
    }); 
</script> 
+0

https://jsfiddle.net/7sndfram/1/ @hanish ich habe Kontrollkästchen, aber nicht Wert auf Eingabe? Irgendwelche um mir zu helfen? – DinhTv

0

Try this:

<input type="checkbox" name="id_image" value="homies_01" class="id_image" onchange="toggleCheckbox(this)" /> 
<input type="checkbox" name="id_image" value="homies_02" class="id_image" onchange="toggleCheckbox(this)" /> 
<input type="checkbox" name="id_image" value="homies_03" class="id_image" onchange="toggleCheckbox(this)" /> 

<input type="text" name="id_image" id="id_image" value="" class="id_image_check" /> 

<script type="text/javascript"> 
    var arrImages = []; 
    function toggleCheckbox(element) { 
     console.log('element', element.value); 

     arrImages.push(element.value); 
     document.getElementById("id_image").value = arrImages; 
    } 
</script>