Créer un compte ou loggez-vous pour pouvoir ajouter, commenter et noter les snippets.

Navigation

Tags relatifs

my Symfony Plugins

Plugins demos


My bookmarks

Vous pouvez commenter/noter en utilisant le compte anonymous (mot de passe: anonymous)
You can comment/rate using the anonymous account (password: anonymous).

Snippets taggés : "radio" Snippets taggés : "radio"

[jQuery] Contrôle de champs radio-box et checkbox - 6621 view(s)

1er cas:

Ici on est dans un cas ou:

- On a 2 radio-box par ligne (et seulement 2)
- Au moins l'une des 2 radio-box doit être sélectionnée
- Si erreur on met le focus sur la 1ère radio du champ
- Si erreur on affiche un message d'erreur à partir du texte d'un div caché

function control_questionnaire()
{  
  checked = false;
 
  jQuery(":radio:even", form).each
  (
    function(intIndex)
    { 
      radio = jQuery(this);
      checked = jQuery(":radio[@name='" + radio.attr('name') + "']:checked", form).size();
 
      if (checked == false)
      {
        radio.focus();
        showFocus(jQuery("#anim_" + radio.attr('id')));
        alert(jQuery("#control_" + radio.attr('id')).html());
 
        return false;
      } 
    }   
  );
 
  if (checked)
  {
    jQuery('#loading-indicator').show();
    jQuery('#diag-form').submit();
  }
}

2ème cas:

Cette fois ci on est dans un cas ou:

- On a un nombre de questions quelconque
- On a un nombre de réponses quelconque, chaque réponse étant représentée par une checkbox
- On peut cocher plusieurs réponses par question
- Au moins l'une des checkbox doit être sélectionnée
- Si erreur on met le focus sur la 1ère checkbox du champ
- Si erreur on affiche un message d'erreur à partir du texte d'un div caché

function control_questionnaire_complexe()
{  
  checked = false;
  name = '';
 
  jQuery(":checkbox", form).each
  (
    function(intIndex)
    { 
      checkbox = jQuery(this);
 
      // Controle si seulement on a pas deja controle le groupe de checkbox
      if (name != checkbox.attr('name'))
      {  
          checked = jQuery(":checkbox[@name='" + checkbox.attr('name') + "']:checked", form).size();
 
          if (checked == false)
          {
            checkbox.focus();
            answer_id = checkbox.attr('id').split('_');
            showFocus(jQuery("#anim_" + answer_id[0]));
            alert(jQuery("#control_" + answer_id[0]).html());
 
            return false;
          }
 
          name = checkbox.attr('name');
      }
    }   
  );
 
  if (checked)
  {
    jQuery('#loading-indicator').show();
    jQuery('#diag-form').submit();
  }
}
par COil le 2009-01-09, taggé : form  javascript  jquery  radio  test 
(1 commentaire)
Debug toolbar