1

こんにちは、フォーカスされた入力のクラスを取得したいと思います。たとえば、次のコードがあります。

<div class="form-all">
<ul class="form-section">
  <li class="form-line" id="id_8">
    <label class="form-label-left" id="label_8" for="input_8">  </label>
    <div id="cid_8" class="form-input">
      <input type="text" class="form-textbox" id="input_8" name="q8_8" size="50" placeholder="Full Name">
    </div>
  </li>
  <li class="form-line" id="id_7">
    <label class="form-label-left" id="label_7" for="input_7">  </label>
    <div id="cid_7" class="form-input">
      <input type="text" class="form-textbox" id="input_7" name="q7_7" size="50" placeholder="Company Name">
    </div>
    </li>
    <li class="form-line" id="id_4">
    <label class="form-label-left" id="label_4" for="input_4">  </label>
    <div id="cid_4" class="form-input">
      <input type="email" class="form-textbox validate[Email]" id="input_4" name="q4_4" size="50" placeholder="Email Address">          
    </div>
  </li>
</ul>
 </div>​​​​​​​​​​​​​​​​​​​​​​​

これは、23 個の入力があるフォームです。<li> 入力にフォーカスして、クラスをin witchに追加したいのは入力です。にクラスを追加する方法を知っていますli。問題は、フォーカスされた入力を見つける方法です.... $("#input_"+ var).parent().addClass("field-active");

とは何varですか?

4

1 に答える 1

2

:focusセレクターを試すことができます:

$('input:focus').attr('id');

アクセスするにはclass:

$('input:focus').attr('class');

必要に応じてセレクターを変更できます。

これをチェックして

$('input').on('focus', function() {
    $('.field-active').removeClass('field-active')
    $(this).parent().addClass("field-active");
}).on('blur',function() {
    $('.field-active').removeClass('field-active')
});​

デモ

于 2012-09-16T10:30:06.953 に答える