2012-10-05 9 views
7

選択された入力を置き換えます。いくつかの文字ボタン、「真の」ボタン、および「偽の」ボタンも表示されます。それは、テキスト、複数の文字ボタンが、私は以下のjsfiddleアプリケーションを持っている

"True"と "False"ボタンは完全に機能します。つまり、ユーザーが "True"をクリックしてから "False"をクリックすると、テキスト入力を置き換えます。 "と" False "を指定します。

しかし、文字ボタンに問題があります。文字ボタンをクリックすると、複数の文字ボタンをクリックすることができることが分かりますが、問題は文字入力が誤っている文字に置き換わることです。複数の文字ボタンが選択されている場合は、それらの文字ボタンのすべてのテキスト入力が表示され、最新の文字ボタンが選択されたテキスト入力は置換されません。

これを達成するには、誰かがコード内で変更する必要があることを知っていますか?

+0

これは宿題ですね。あなたは私たちをあなたのプロジェクトに学校のサーバーでリンクしていますか? – saml

答えて

1

あなたがここにボタンのdata-hidを生成します。この基づいて

var hid = "hidden" + id + n + "value"; 
$(btn).attr("data-hid", hid); 

あなたは今、入力フィールドを生成します。

var input = '<input type="text" id="' + hid + '" value="' + value + '" name="' + id + 'value" />'; 

この中にid変数がボタンのIDです、例えば、answerCとなります。したがって、最初にボタンをクリックすると、これで#hiddenanswerC0valueの隠蔽が得られます。

.attr('id', $this.attr('id')+'Row'); 

だから、最後に余分なを持っています:

は、しかし、あなたが答えを追加したときにボタンがidは、このように生成されています。したがって、data-hidと入力ボックスは異なっています(#hiddenanswerCRow0value)。

編集: もう1つの問題は、新しいボタンのデータ隠しを実際に作成しないことです。最初のボタンセットをクリックした後に作成するだけです。しかし、既にアクティブになっているCボタンで2番目のセット(クリック後)を作成すると、data-hidが設定されないので、それを削除することはできません。

+0

私はちょうどフィドルを変更してみましょう、私はそれぞれの質問に属する各回答のカウントを生成することができると思いますが、私は別の問題があります – user1723760

+0

私は質問を更新し、フィドルを更新しました。 – user1723760

+0

私は更新されたフィドルであなたが指摘している問題はそれですか? – user1723760

0

問題が発生した最初のIDで入力IDが正しく設定されていないようです。私はそれが "#hiddenanswerC0value"のIDを取得するが、 "#hiddenanswerCRow0value"でなければならないことを示しています。私はそれをもう少し見ていきますが、それだけで十分です。

+0

私はフィドルを変更して元の問題を忘れて別の問題があるので、qustionを更新します – user1723760

+0

質問を更新し、フィドルを更新しました。代わりにこの問題を解決してください。 – user1723760

関連する問題