2013-07-02 3 views
0

У меня есть 3 Divs, как показано ниже:Сделать по умолчанию с помощью JavaScript/JQuery

<div id="div1"> 
    <table> 
     <tr> 
      <td> 
       <Telerik:RadTextBox ID="RadTextBox1" runat="server"> 
       </Telerik:RadTextBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadTextBox ID="RadTextBox2" runat="server"> 
       </Telerik:RadTextBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadComboBox ID="RadComboBox1" runat="server"> 
        <Items> 
         <Telerik:RadComboBoxItem Value="1" Text="First" /> 
         <Telerik:RadComboBoxItem Value="2" Text="Second" /> 
        </Items> 
       </Telerik:RadComboBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadButton ID="RadButton1" runat="server" Text="Button 1"> 
       </Telerik:RadButton> 
      </td> 
     </tr> 
    </table> 
</div> 
<div id="div2"> 
    <table> 
     <tr> 
      <td> 
       <Telerik:RadTextBox ID="RadTextBox3" runat="server"> 
       </Telerik:RadTextBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadTextBox ID="RadTextBox4" runat="server"> 
       </Telerik:RadTextBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadComboBox ID="RadComboBox2" runat="server"> 
        <Items> 
         <Telerik:RadComboBoxItem Value="1" Text="First" /> 
         <Telerik:RadComboBoxItem Value="2" Text="Second" /> 
        </Items> 
       </Telerik:RadComboBox> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <Telerik:RadButton ID="RadButton2" runat="server" Text="Button 2"> 
       </Telerik:RadButton> 
      </td> 
     </tr> 
    </table> 
</div> 

Если какой-либо из текстовых полей или выпадающего списка (и есть дополнительные HTML элементы, такие как календарь управления и т.д.) сфокусирован, то я хотел бы для установки этой кнопки divs в качестве кнопки по умолчанию при нажатии ввода.

Я попытался код ниже только для RadTextBoxes:

$().ready(function() { 
       $(document).keypress(function(e) { 
        if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) { 
         e.preventDefault(); 
         if ($('#div1 input').is(":focus")) { 
          alert("div1"); 
         } 
         else if ($('#div2 input').is(":focus")) { 
          alert("Inside div2"); 
         } 
         else { 
          return false; 
         } 
        } 
       }); 
      }); 

Я вижу, что не проникает внутрь в любом из положений If. Может кто-нибудь мне помочь?

ответ

0

Я смог установить кнопку по умолчанию, когда текстовые поля сфокусированы. Я вижу, что класс riFocused добавляется, когда RadTextBox сфокусирована

if ($('#div1 input.riFocused').length > 0 || $('#div1.rcbFocused').length > 0) { 
    alert("Inside div1"); 
} 
else if ($('#div2 input.riFocused').length > 0) { 
    alert("Inside div2"); 
} 
else { 
    return false; 
} 

Для RadComboBox, класс был rcbFocused. Но проблема в том, что когда я нажимаю Enter, я не мог даже попасть в цикл document.ready.

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