#jquery
#jquery
Вопрос:
При нажатии флажка я копирую тот же раздел HTML в другой div с именем «ordersdiv«
Теперь пользователь может нажать на оба флажка, которые находятся в activateUiHTML div или в ordersdiv div
Прямо сейчас у меня есть общий слушатель для них обоих, как показано на рисунке
$(document).on("click", ".checkboxclas", function(e) {
var divdata = $("div.activateUiHTML").html();
$("#ordersdiv").append(divdata);
});
Это мой jsfiddle
Комментарии:
1. Итак, в чем ваш вопрос?
2. Как отличить, из какого div установлен флажок??
3. Вы хотите отменить событие из ordersdiv?
4. вы хотите получить идентификатор или число или что-то в этом роде?
5. Мне просто нужно предупреждение о том, что оно нажато из этого конкретного div.
Ответ №1:
Просто добавьте класс в orders div
<div id="ordersdiv" class="orders">
Попробуйте это
$(document).on("click", ".checkboxclas", function(e) {
var cls = $(this).parents('div').attr('class') // based on class
if(cls == 'activateUiHTML')
{
var divdata = $("div.activateUiHTML").html();
$("#ordersdiv").append(divdata);
}
else{}
});
Комментарии:
1. @PreethiJain Рад вам помочь
:-)
Ответ №2:
Вы можете добавить дополнительный класс к каждому из divs, а затем на основе этого сделать решение
$(document).on("click", ".checkboxclas", function (e) {
if ($(this).has('.classA')) {
} else {
}
//var divdata = $("div.activateUiHTML").html();
//$("#ordersdiv").append(divdata);
});
Более чистым решением было бы добавить каждый из классов div, а затем отдельные обработчики, если механизмы обработки отличаются
Ответ №3:
Вы проверяете Parent, чтобы найти
$(document).on("click", ".checkboxclas", function(e) {
if($(this).parent().parent().attr('id')=="clickdiv")
{
var divdata = $("div.activateUiHTML").html();
$("#ordersdiv").append(divdata);
}
});
Ответ №4:
ПОПРОБУЙТЕ ЭТУ ДЕМОНСТРАЦИЮ, вам нужно добавить простую проверку, чтобы сделать это следующим образом:
var id = $(this).closest("div").attr("id");
if(id!="ordersdiv")