2015-12-24 21 views
6

enter image description hereCambio Id & Class All'interno di una variabile che contiene codice html jquery

Quello che sto cercando di fare è Al clic di Button AggAltri mi sto id del pulsante

<div id="MemberCountDiv"> 
       <div class="MemberDescriptionAdd" style="display:none;"> 
        <select name="MemberCountType" id="MemberCountTypeX" class="MemberCountTypeX form-control "> 
         <option selected="selected" value="">Condition</option> 
         <option value="<">Less Than (&le;)</option> 
         <option value=">">Greater Than (&ge;)</option> 
         <option value="=">Equal</option> 
        </select> 
        <select name="MemberCount" id="MemberCountX" class="MemberCountX form-control "> 
         <option selected="selected" value="">Members</option> 
         <option value="1">1</option> 
         <option value="2">2</option> 
         <option value="3">3</option> 
         <option value="4">4</option> 
         <option value="5">5</option> 
         <option value="6">6</option> 
         <option value="8">7 Or More Than 7</option> 
        </select> 
        <button id="RemoveX" class="btn btn-blue" type="button">Remove</button> 
       </div> 
      </div> 

ho conservato questo div e quello che sto il click è

$(".AddMoreButton").click(function() { 
     var type = $(this).val(); 
     var idname = $(this).attr("id"); 
     var id = idname.replace("AddMore", ""); 
     alert(id); 
     var adddiv = $('#MemberCountDiv').html(); 
     alert(adddiv); 
     adddiv.find('.MemberDescriptionAdd').attr('id', 'your-new-id'); 
     alert(adddiv); 
    }); 

quello che sto cercando di fare è aggiungere id per l'id e la classe

Errore:

adddiv.find is not function 
+3

Provare '$ ('# MemberCountDiv'). Find ('. MemberDescriptionAdd'). Attr ('id', 'your-new-id');' –

risposta

5

Questo è beacause adddiv è stringa HTML e oggetto non jquery di elemento. utilizzare:

var adddiv = $('#MemberCountDiv'); 
alert(adddiv.html()); 
adddiv.find('.MemberDescriptionAdd').attr('id', 'your-new-id'); 
alert(adddiv.html()); 
2

Non è possibile farlo utilizzando una stringa. Basta usare .clone():

var adddiv = $('#MemberCountDiv').clone(); 
alert(adddiv.html()); 
adddiv.find('.MemberDescriptionAdd').attr('id', 'your-new-id'); 
alert(adddiv.html()); 

Ora adddiv agisce come un elemento HTML ed è possibile effettuare tutte le modifiche.