我有这个HTML代码:
<div>
<input type="checkbox" class="coche" id="{{ $role_fonction->id_fonction }}" <?php if ($role_fonction->checked == 'Y') {echo 'checked';} ?>>
<i class="fa fa-spinner fa-spin" id="waiting_{{ $role_fonction->id_fonction }}" style="display: none;position:absolute;"></i>
</div>
当我点击复选框时,我想显示微调器。如何在这个JavaScript中做到这一点?
$.ajax({
type : 'POST',
url : $('#url_for_ajax').val() + '/update_role_fonction_ajax',
dataType : 'json',
data:{_token:_token, id_fonction:id_fonction,type:type,id_role:$('#id_role').val()},
beforeSend : function() {$('#id_XXXXX').show();}, // <== to display the spinner
success: function( data ) {
$('#id_XXXXX').hide();
}
});
在HTML代码中,我为微调器创建了一个articial id:id="waiting_{{ $role_fonction->id_fonction }}"
。所以这个Id是独一无二的。
但在此之后,如何在我的代码中获取此ID(请参阅js代码中的#id_XXXXX)?
答案 0 :(得分:2)
由于您将事件侦听器附加到复选框,因此可以使用jQuery方法.next()
$(function() {
$('.js-checkbox').on('change', function() {
var $nextEl = $(this).next();
// start the spinner
$nextEl.show();
// do the ajax etc.
});
});