#jquery
#jquery
Вопрос:
Ниже приведен код в jQuery.
$(document).ready(function(){
$("[id^='rdlAvailability_'][type='radio']").each(function () {
$(this).change(function(){
var radioBtnId = this.id;
var $this = $(this);
radconfirm('Are you sure you want to select this slot?', function(arg){
if (arg == true) {
$find('<%= FindControl("txtAvailability").ClientID %>').set_value("");
}
else {
$this.siblings('input').prop('checked',true);
var rdlAvailability = document.getElementById(radioBtnId);
rdlAvailability.checked = false;
$this.prop('checked', false);
}
}, 300, 100,"");
})
});
});
Это разметка для доступности rdlAvailability для понедельника
<table id="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability" class="radio1" border="0" style="color: #004B59; font-size: 11px; font-family: Arial, Sans-serif; text-align: justify">
<tr>
<td><span disabled="disabled"><input id="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_0" type="radio" name="ctl00$ContentPlaceHolder1$MyAvailability$MyAvailabilityMonday$rdlAvailability" value="AVL01" disabled="disabled" /><label for="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_0">Slot 0</label></span></td>
</tr><tr>
<td><input id="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_1" type="radio" name="ctl00$ContentPlaceHolder1$MyAvailability$MyAvailabilityMonday$rdlAvailability" value="AVL02" /><label for="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_1">Slot 1</label></td>
</tr><tr>
<td><input id="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_2" type="radio" name="ctl00$ContentPlaceHolder1$MyAvailability$MyAvailabilityMonday$rdlAvailability" value="AVL03" /><label for="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_2">Slot 2</label></td>
</tr><tr>
<td><input id="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_3" type="radio" name="ctl00$ContentPlaceHolder1$MyAvailability$MyAvailabilityMonday$rdlAvailability" value="AVL04" checked="checked" /><label for="ctl00_ContentPlaceHolder1_MyAvailability_MyAvailabilityMonday_rdlAvailability_3">Slot 3</label></td>
</tr>
</table>
Как я могу заставить код jQuery работать только один раз при нажатии в понедельник или в любой другой день. Я дал разметку для понедельника. Теперь я получаю 4 сообщения с подтверждением. Он не улавливает правильный идентификатор доступности rdlAvailability
.
Ответ №1:
Попробуйте привязать щелчок напрямую, а не в каждой функции
$("[id^='rdlAvailability_'][type='radio']").on("change", function()
{
// your code here
});