簡體   English   中英

如何使用jQuery獲取每個選中的復選框

[英]How to get each checked checkbox using jQuery

我有以下內容:

PHP / HTML代碼:

<?php
$c = 1;
    foreach($this->contactos as $contacto){
?>
        <div class="uk-form-row">
        <label for="contactopadrino<?php echo $c; ?>" class="uk-form-label"><?php echo $contacto->email; ?></label>

        <input class="contactopadrinos" name="contactopadrino[]" id="contactopadrino<?php echo $c; ?>" type="checkbox" value="<?php echo $contacto->email; ?>" />
        </div>

<?php 
$c++;
}
?>      

jQuery代碼:

     function validarEnviarDescuento(){  
        $('#errorofertacontainerdescuento').css('display','none');
        $('#errorofertadescuento').html('');
        var validar = 0;
        var vacio = 0;
        for(var e=1; e<6; e++){
            var email = $("#email_contactopadrino"+e).val();    
            if(!validarEmail(email) && email != ''){
                validar++;
            }
            if(email != ''){
                vacio++;
            }
        }

        if(!vacio){
             $('input:radio:checked').each(function () { 
                var $this = $(this);

                if ($(this).prop('checked')) {
                    return true;
                }
            });

            $('#errorofertadescuento').append('<li>' + '<?php echo JText::_('COM_CSTUDOMUS_ERROR_SIN_SELECCIONAR'); ?>' + '</li>');
            $('#errorofertacontainerdescuento').css('display','block');
            return false;
        }
        if(validar){ 
            $('#errorofertadescuento').append('<li>' + '<?php echo JText::_('COM_CSTUDOMUS_ERROR_EMAIL_INCORRECTO'); ?>' + '</li>');
            $('#errorofertacontainerdescuento').css('display','block');
            return false; 
        }
        else{ 
            return true; 
        }

 }

我試圖通過每個輸入,如果一個被檢查它應該返回true並提交,但我所做的不起作用。

您可以使用:checked選擇器以獲取所有選中的單選按鈕。

$('input:radio:checked')

描述 :匹配所有檢查或選擇的元素, jQuery文檔

如果要檢查是否檢查了至少一個無線電,則可以使用長度

if($('input:radio:checked').length)
{
}

對於迭代已檢查的無線電,您可以使用每個

$('input:radio:checked').each(function(){
  alert(this.value);
});

您不需要使用each 而是使用cobination :checkedlength

return $('input:checkbox:checked').length;

如果選中任何復選框按鈕,它將返回true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM