通过jQuery click事件将文本放入textarea?

时间:2013-10-02 03:24:01

标签: jquery

说我有这样的文字区域:

<textarea id="comment_mc" name="comment" class="comment" rows="4" cols="30"></textarea>

这样的div:

<div class="fees-item fees-item-odd">
訂婚,歸寧或補請午宴,晚宴<br />
妝前保養<br />
造型改變2套<br />
上水粉,協助nu bra穿著<br />
宴客補妝<br />
媽媽妝1 親友淡妝1(不含髮型)<br />
新郎淡妝(含髮型)</p>
<h4>16000NTD</h4>
<a class="fees-purchase" href="">Purchase</a>
</div>
<div class="fees-item fees-item-even">
結婚全程(三套造型)<br />
妝前保養<br />
迎娶造型<br />
進場造型2套<br />
上水粉協助NU Bra穿著<br />
宴客補妝<br />
媽媽妝1 (不含髮型)<br />
新郎淡妝(含髮型) </p>
<h4>18000NTD</h4>
<a class="fees-purchase" href="">Purchase</a>
</div>

当用户点击.fees-item链接时,是否有textarea div的文字放入fees-purchase

4 个答案:

答案 0 :(得分:3)

尝试使用以下代码段:

$('.fees-purchase').click(function(e) {
    e.preventDefault();
    $('textarea').html($(this).parent('.fees-item').text().replace($(this).html(),''));
});

您可以在 JSFIDDLE.NET

找到该演示

答案 1 :(得分:1)

假设您打算将您想要的文本换成<p>标记中的textarea,而不是标记不正确

$('.fees-purchase').click(function(e){
    e.preventDefault();
    $('#comment_mc').val($(this).siblings('p').text());
})

标记应为

<div class="fees-item fees-item-odd">
<p>
訂婚,歸寧或補請午宴,晚宴<br />
妝前保養<br />
造型改變2套<br />
上水粉,協助nu bra穿著<br />
宴客補妝<br />
媽媽妝1 親友淡妝1(不含髮型)<br />
新郎淡妝(含髮型)</p>
<h4>16000NTD</h4>
<a class="fees-purchase" href="">Purchase</a>
</div>
<div class="fees-item fees-item-even">
<p>
結婚全程(三套造型)<br />
妝前保養<br />
迎娶造型<br />
進場造型2套<br />
上水粉協助NU Bra穿著<br />
宴客補妝<br />
媽媽妝1 (不含髮型)<br />
新郎淡妝(含髮型) </p>
<h4>18000NTD</h4>
<a class="fees-purchase" href="">Purchase</a>
</div>

答案 2 :(得分:1)

尝试

$(function () {
    $('.fees-item').on('click', '.fees-purchase', function (event) {
        event.preventDefault();
        //console.log($(this).closest('div').text())
        $('#comment_mc').val($(this).closest('div').find('p').text());
    });
});

请参阅http://jsfiddle.net/tamilcselvan/xGpZf/1/

中的演示

答案 3 :(得分:1)

也许您不使用<br>,但可以使用<p>

<head>
    <script type="text/javascript" src="js/jquery-1.10.1.min.js"></script>
    <script>
        $("document").ready(function(){
            p = $('.fees-item').find('p');

            $('.fees-purchase').click(function(){
                $('textarea').text(p);    
            });

        });
    </script>
</head>
<body>
    <textarea class="comment_mc"></textarea>
    <div class="fees-item">
        <p>1</p>
        <p>1</p>
        <p>1</p>
    </div>
    <a href="" class="fees-purchase">Purchase</a>
</body>