2017-03-23 15 views
0

私は(たぶん簡単ではない)質問があります。私は3つの異なるテキストフィールドを持つJqueryの電卓を持っています。私はボタンの番号を使用すると同時に3つのフィールドすべてに書き込みます(明らかに)$("input[type=text]")を入力宣言に使用しています。 (それはまさに私が変えたいものです。私はすべてのテキストフィールドにIDとIDを与えることを考えましたが、それはすべてのIDに対して同じ関数を書く必要があります、それは非常に不公平でしょうか? ? (多分それはまた、誰かを助けることができます:))3つのテキストフィールドを持つ電卓、フォーカスのフィールドにのみ書き込むjquery

https://jsfiddle.net/2yuve11z/

+0

あなたが集中していない間に集中入力をどのように知るのですか?ボタンの1つをクリックしている間に、入力のどれにも焦点を当てていないことを意味します。 –

+0

はい、それは絶対に正しいことです、それはまた問題です...私は全く別の方法でそれを行う方法を理解していません.../ –

+0

あなたは入力を選択としてマークする方法を考える必要があります各入力の横にあるラジオボタン?または最後に焦点を合わせた入力を記録しますか? –

答えて

1

が、私はこれを使ってバイオリンを更新しました:ここに助けを事前に焦点上の入力にのみ 感謝を書いて、することが私のバイオリンです1:

https://jsfiddle.net/2yuve11z/2/

ロジックは次のとおりです。入力がフォーカスを取得したとき

、私は他の入力.activeクラスを削除し、集中入力に私が唯一.activeクラスに1を更新.active class.Thenを追加します。

アクティブな入力をページにロードする場合は、.activeクラスを追加してください。テキストフィールドは、あなたのボタンが唯一

$(function() { 
        focused = ''; 
     $("input:text").focus(function() { 
      focused = this; 
     }); 

     $("input:button").click(function(){ 
      vlr = $(this).val(); 
      atual = $(focused).val(); 
      if(vlr=="C"){ 
       $(focused).val(""); 
      }else{ 
       if(vlr=="="){ 
        $(focused).val(eval(atual)); 
       }else{ 
        $(focused).val(atual + vlr); 
       } 
      } 
     }); 
    }); 
+0

私が書いたのとまったく同じですが、あなたはさらに行き、自分の後ろで整理して処理しました。 – Mauro

+0

@ PakSsuとMauro、一度に問題を解決しました!お元気ですか、ありがとう! –

0

あなた<input type="button"><button type="button">

0

HTML5のヒントが

変更し、1つのテキストボックスと対話することができ、選択されてチェックすることによって、

0

使用focusをすることによりセレクタ - 様:$("input[type=text]:focus")

関連する問題