2016-12-28 9 views
1

У меня есть функция отображения формы поиска Wordpress и ее скрыть. Проблема в том, что я хочу, чтобы весь контейнер был доступен для отображения/скрытия, но когда я нажимаю текстовый ввод моей формы поиска, он скрывает его. Возможно ли инициировать событие onclick, когда я нажимаю на вход?отключить onclick только на одном элементе внутри

Вот моя архитектура:

<li onclick="search_form(this)"> 
    <img src="#" > 
    <div> 
     <form role="search" id="searchform" method="get" action="/"> 
      <div> 
       <input type="text" name="s" id="s" size="15" required="" placeholder="Search"> 
      </div> 
     </form> 
    </div> 
</li> 

У меня есть что-то вроде этого https://puu.sh/t3tiN/8655c07973.png (картина моей Li)

Спасибо вам

Edit: Кто-то спросил меня, для функции, не хочу добавить его, потому что это просто css:

function search_form() { 
    if ($(window).width() > 1041) { 
     var display = $('#mobile_search_form').css('display'); 
      if (display == "none") { 
        /* many css animate */ 

      } else if (display == "inline-block") { 
        /* many css animate */ 
      } 
    }else if ($(window).width() < 1041) { 
     window.location.href = "#" 
     $(document).ready(function() { 
     $('#result_number').css('display',"none"); 
     }); 
    } 
} 
+0

_I есть функция_ Поделитесь своим кодом – Satpal

+0

код слишком длинный и полный css a но я все равно могу поделиться им –

ответ

0

Возьмите loo k при stopPropagation(). Я думаю, что это exactely то, что вы хотите сделать:

<li id="myLi"> 
    <img src="#" > 
    <div> 
     <form role="search" id="searchform" method="get" action="/"> 
      <div> 
       <input type="text" name="s" id="s" size="15" required="" placeholder="Search"> 
      </div> 
     </form> 
    </div> 
</li> 

Javascript:

$("#myLi").click(search_form($(this)); 
$("#s").click(function (e) { 
    e.stopPropagation(); 
}); 
+0

Вы правы, это то, чего я не смог найти. Спасибо ! –

0

Если вы не возражаете, немного инлайн сценария:

<li onclick="search_form(this)"> 
    <img src="#" > 
    <div> 
     <form role="search" id="searchform" method="get" action="/"> 
      <div> 
       <input onclick="event.stopPropagation()" type="text" name="s" id="s" size="15" required="" placeholder="Search"> 
      </div> 
     </form> 
    </div> 
</li> 

Кредит: Я получил ответ от How to stop event propagation with inline onclick attribute?

+1

Я не могу этого сделать, это форма, созданная wordpress. –

Смежные вопросы