2010-08-12 4 views
0

Comment puis-je annuler le gris si la ligne de sélection a été supprimée? En outre, lorsque plusieurs lignes sont ajoutées, je souhaite supprimer uniquement la ligne correspondant au bouton "Supprimer" et non les autres. Je suppose, ma principale préoccupation est comment puis-je savoir quelle ligne ajoutée a été supprimée, lorsque le bouton "Supprimer" est cliqué. S'il vous plaît aider. Merci d'avance.jquery ajouter/supprimer avec l'option greyout

$('#btn').live('click',function() { 
    $("#table_name tr:first").before("<tr><td class='c'><input type='hidden' name='a_name' value='" + a + "'>" + a + "</td><input type='button' class='delete' value='Remove'></td></tr>"); 
    $("#a option:selected").attr("disabled", true); 
}); 
$('#table_name td .delete').live('click',function(){ 
    // here I want to once again enable the selection 
    attr("disabled", false); 
    $(this).parent().parent().remove(); 
}); 
<select id="a" name="a"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    <option value="4">4</option> 
</select> 
<input id="btn" class="button" type="button" value="Add" /> 

Répondre

1

Remplacer ceci:

// here I want to once again enable the selection 
    attr("disabled", false); 

Avec quelque chose comme:

// Grab the value of the corresponding input 
var val = $(this).prev('td').find('input[name=a_name]').val(); 
// Re-enable the corresponding select option 
$('select#a option[value='+val+']').removeAttr('disabled'); 

Vous devez utiliser la valeur de l'entrée cachée de le relier avec l'élément de l'option select.

+0

Nous vous remercions de votre réponse. Cela ne fonctionne que si j'ai ajouté une ligne, mais que faire si j'ai plusieurs lignes ajoutées, et que je veux en supprimer une. Comment puis-je suivre les lignes individuelles et réactiver une ligne particulière? – DGT

+0

Avez-vous une page à regarder? Sans le regarder, je ne peux pas vraiment imaginer ce que vous essayez de faire exactement. – jwal

+0

Salut jwal, Voici ce que j'essaie de faire. http://jsfiddle.net/N2jyy/2/ J'apprécierais votre aide. – DGT

0

peut-être

$(...).removeAttr("disabled");