2014-08-27 10 views
0

У меня есть экземпляр, где мои финитчики не будут работать нажатием кнопки, поэтому я считаю, что найти ближайший вход и .click() или .focus() (для него datepicker, поскольку это же поле должно быть затронуто). Ради этой демонстрации, нажмите кнопку/значок - найдите ближайший вход и нажмите на него. Если правильно, граница будет светиться синим цветом. http://jsfiddle.net/81tvr0op/Изменить ближайший вход val?

HTML

<table> 
    <tr> 
     <th> 
      <div class="input-group date"> 
       <input type="text" /> 
       <span class="input-group-btn"> 
        <button class="btn default" type="button"> 
         <i class="fa fa-calendar"></i> 
         Icon 
        </button> 
       </span> 
      </div> 
     </th>  
    </tr> 
</table> 

JQuery

... что-то вроде

$(".date > span > button").on('click', function (e) { 
       e.preventDefault(); 
       $(this).closest("th").find("input:text").click(); 
      }); 

... верно?

ответ

2

Если я правильно понял, вы пытаетесь поместить курсор в поле ввода, когда пользователь нажимает кнопку.

Для этого вы должны использовать .focus() вместо .click().

Рабочий пример: http://jsfiddle.net/81tvr0op/1/

0

С вашей jsfiddle, что-то, как это должно работать.

$("button").on('click', function (e) { 
    e.preventDefault(); 
    $(this).parent().siblings(0).focus(); 
}); 

Или дать ваш входной идентификатор и сделать что-то вроде:

$("button").on('click', function (e) { 
    e.preventDefault(); 
    $("#dateInput").focus(); 
});