aタグで作成したボタンを押下して、input textとtextareaに同時、または個別にテキストを入れようとjQueryで作成しているのですが、テキストは挿入されるが名前と内容の両方に入ってしまい悩んでいます。
ラジオボタンにdata-を入れて、名前と内容をif文にしています。
最初に内容ボタンを押下すると内容のみに入りますが、名前と内容ボタンを押下するとその後も内容ボタンを押下しても名前と内容に入ってしまいます。
どうも最初にボタンを押下して取得したデータを保持している?みたいです。
もしわかる方がいらっしゃいましたらお教え頂けると幸いです。
よろしくお願い致します。
//jQuery $(".hoge").on("click", function() { //名前と内容 if ($(this).data("text") == 'name,body') { $("a").on("click", function() { $(".hoge1 input[data-text='name']").val($(this).find(".name").text()); $(".hoge1 input[data-text='body']").val($(this).find(".body").text()); }); //内容 } else if ($(this).data("text") == 'body') { $("a").on("click", function() { $(".hoge1 input[data-text='body']").val($(this).find(".body").text()); }); } }); //ラジオボタン <div class="hoge"> <span class="radio" data-text="name,body">名前</span> <span class="radio" data-text="body">内容</span> </div> //名前・内容ボタン <a href="javascript:void(0)"> <span class="name">名前</span> <span class="body">内容</span> </a> <a href="javascript:void(0)"> <span class="body">内容</span> </a> //input textarea <div> <label>名前</label> <div class="hoge1"> <input type="text" data-text="name"> </div> </div> <div> <label>内容</label> <div class="hoge1"> <textarea rows="4" data-text="body"></textarea> </div> </div>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/20 14:50 編集
退会済みユーザー
2016/05/20 15:10
2016/05/20 16:01