2017-07-11 9 views
0

appendメソッドのliアイテムを追加しました。チェックボックスをオンにするとliアイテムクラスを変更したいと思います。アペンドコードチェックボックスがチェックされているかどうかのテストchnage li itemsクラス

$('#submit').on('click', function(evt){ 
     evt.preventDefault(); 
     var invitee = $('#inviteName').val(); 
     console.log(invitee); $('#invitedList').append('<li>'+invitee+'<br>'+'<input type="checkbox" name="checkbox" value="confirm" id="confirm">'+"Confirmed"+'<br>'+'<button type="submit" name="edit" value="edit" id="edit">edit</button>'+'<button type="submit" name="remove" value="remove" id="remove">remove</button>'+'</li>'); 
}); 

の変更クラスコード

$('#invitedList').on('change','#confirm',function(evt){ 
    evt.preventDefault; 
    var isChecked = false; 
    if (document.getElementById('confirm').checked) { 
    $(this).parent().addClass('responded'); 
    } else { 
    $(this).parent().addClass(''); 
    } 
}); 

HTMLコード

<form id="registrar"> 
    <input type="text" name="name" placeholder="Invite Someone" id="inviteName"> 
    <button type="submit" name="submit" value="submit" id="submit">Submit</button> 
</form> 
</header> 

<div class="main"> 
    <h2>Invitees</h2> 
    <ul id="invitedList"></ul>  
</div> 
</div> 
+0

株式関連のHTML –

+0

は、あなたのコードがme.Plsのためにうまく働いはコメントしていないあなたの質問にHTMLを追加します –

答えて

1

私はclass="confirm"代わりのidで複数の要素click.tryに問題があることを考えるのです

。そしてで行うelse文のための210

$('#submit').on('click', function(evt){ 
 
    evt.preventDefault(); 
 
    var invitee = $('#inviteName').val(); 
 
    console.log(invitee); 
 
    $('#invitedList').append('<li>'+invitee+'<br>'+'<input type="checkbox" name="checkbox" value="confirm" class="confirm">'+"Confirmed"+'<br>'+'<button type="submit" name="edit" value="edit" id="edit">edit</button>'+'<button type="submit" name="remove" value="remove" id="remove">remove</button>'+'</li>'); 
 
}); 
 

 
$('#invitedList').on('change','.confirm',function(evt){ 
 
    evt.preventDefault; 
 
    if ($(this).is(":checked")) { 
 
     $(this).parent().addClass('responded'); 
 
    } else { 
 
     $(this).parent().removeClass('responded'); 
 
    } 
 
});
.responded{ 
 
border:1px solid red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form id="registrar"> <input type="text" name="name" placeholder="Invite Someone" id="inviteName"> <button type="submit" name="submit" value="submit" id="submit">Submit</button> </form> </header> <div class="main"> \t <h2>Invitees</h2> <ul id="invitedList"></ul> \t </div> </div>

関連する問題