2010-07-23 3 views
2

Ce que je cherche à faire est de popup une boîte de confirmation "êtes-vous sûr" si la valeur nouvellement sélectionnée d'une liste déroulante est une certaine valeur avant de soumettre le formulaire.ASP.NET et JQuery - Popup pour la valeur de liste déroulante sélectionnée

<select name="ListSearchType" id="ListSearchType"> 
    <option value="C">Closed</option> 
    <option value="O">Open</option> 
    <option value="P">Pending</option> 
</select> 

Donc, si j'avais le dropdownlist comme ci-dessus avec autopostback permis, je veux une boîte de apparaitre confirmation si l'utilisateur de sélectionner « Fermé » avant que le formulaire est soumis.

Répondre

2
$("#ListSearchType").onchange(function() { 
    if ($(this).val() == "C") { 
     var confirmed = confirm("Are you sure ?"); 
     if (!confirmed) { 
      return false; 
     } 
    } 
}); 
2

Une façon qui me vient à l'esprit est de définir l'option autopostback option = true, mais vous pouvez gérer l'événement client change avec jquery.

Dans le gestionnaire change, vous devez cocher l'option sélectionnée et effectuer une publication manuelle en fonction des valeurs/confirmation de l'utilisateur.

2

sur Envoyer le formulaire Solution:

$(document).ready(function() { 
    $("#yourFormID").submit(function() { 
    if ($("#ListSearchType").val() == "C")) { 
     if (!confirm("ARe you sure?")) { 
     return false; 
     } 
    } 
    return true; 
    }); 
}); 

sur le changement de champ Solution

$(document).ready(function() { 
     $("#ListSearchType").change(function() { 
     if ($(this).val() == "C")) { 
      if (!confirm("ARe you sure?")) { 
      //Do something..disable submit, revert to original value. 
      } 
     } 
     }); 
    }); 
Questions connexes