2

У меня есть div с именем класса .modalPopup внутри div. У меня есть таблица с несколькими таблицами и внутри. У меня есть div и внутри нескольких элементов управления, таких как текстовое поле (input) и dropdownlists (select).Использование Jquery Selector не

Я хочу, чтобы я хотел запустить событие click, когда пользователь нажимает на любое место в главном div, у которого есть «modalPopup», кроме раскрывающегося списка (выберите). Я пытаюсь использовать мои параметры, но я не могу получить конкретное событие click. как

$('.modalPopup :not(modalPopup select)').click(function(){ 
    document.write("working for click except select "); 
    }); 

любой один предоставить мне решение.

ответ

0

Самый простой способ это просто связать событие щелчка на DIV с классом modalPopup, а затем проверить, что пользователь действительно нажал на использовании e.target:

$('.modalPopup').click(function(e){ 
    if (!$(e.target).is('select')) { 
     document.write("working for click except select "); 
    } 
}); 

e.target является дом элемент, который щелкнул , $(e.target).is('select') получает этот элемент dom и создает из него объект jQuery и проверяет, выбран ли он.

JSFiddle Example

+0

можете ли вы, пожалуйста, разобрать его? If (! $ (E.target) .is ('select')) ". Я очень благодарен вам за это ... –

+0

@ user1129558 Уверен - см. мое редактирование –

+0

спасибо @Richard D для объяснения. –

0

Вам не хватает точки перед .modalPopup в состоянии not().

$('.modalPopup :not(.modalPopup select)').click(function(){ document.write("working for click except select "); }); 
+0

я скучаю точку при вводе здесь .. я найти solution.thanks за помощь. –