当我点击#one时,#two只会附加到第一个textarea。和#three,#four仅用于第二个textarea。但我的代码附加到textareas。
<form accept-charset="UTF-8" action="/home/index" method="post">
<div class="hashtag">#one</div>
<div class="hashtag">#two</div>
<textarea id="text-box"></textarea>
<input type="submit" value ="ok" id="go" />
<div class="hashtag">#three</div>
<div class="hashtag">#four</div>
<textarea id="text-box1"></textarea>
<input type="submit" value ="ok" id="go" />
</form>
JQUERY CODE
$(document).ready(function(){
$(".hashtag").click(function(){
var txt = $.trim($(this).text());
var box = $("#text-box");
var box1 = $("#text-box1");
box.val(box.val() + txt);
box1.val(box1.val() + txt);
});
});
我的代码会将文字附加到两个文本框中。
[http://jsfiddle.net/Hhptn/483/][1]
答案 0 :(得分:1)
您可以使用数据属性为主题标签指定目的地:
<div class="hashtag" data-dest="text-box">#one</div>
<div class="hashtag" data-dest="text-box">#two</div>
<div class="hashtag" data-dest="text-box1">#three</div>
<div class="hashtag" data-dest="text-box1">#four</div>
并在js:
$(document).ready(function(){
$(".hashtag").click(function(){
var txt = $.trim($(this).text());
var dest = '#' + $(this).data('dest');
$(dest).val($(dest).val() + txt);
});
});
答案 1 :(得分:0)
你附加两个方框,你可以提出一个条件。
$(document).ready(function(){
$(".hashtag").click(function(){
var txt = $.trim($(this).text());
var box = $("#text-box");
var box1 = $("#text-box1");
if(txt == '#one' || txt == '#two')
box.val(box.val() + txt);
if(txt == '#three' || txt == '#four')
box1.val(box1.val() + txt);
});
});
希望这有帮助。
干杯!!
答案 2 :(得分:0)
试试这个,Demo
$(".hashtag").click(function(){
var txt = $.trim($(this).text());
var box = $("#text-box");
var box1 = $("#text-box1");
if(txt == '#one' || txt == '#two') { box.val(box.val() + txt); }
if(txt == '#three' || txt == '#four') { box1.val(box1.val() + txt);}
});