单击时将文本添加到textarea中

时间:2014-09-11 06:58:36

标签: javascript jquery forms

我得到了这个标记,大部分都可以使用(需要jQuery):

<label>Description</label><br />
<textarea id="the-text"></textarea>   
<br />
<br />
<a href="#" id="get-alternative-text">Use alternative text</a>

<script type="text/javascript">
$("#get-alternative-text").click(function(){
     $("#the-text").text("this is the alternative text").show();
});
</script>

如果您点击“使用替代文字”&#39;链接然后替代文本被抛入文本区域。但这仅在用户尚未将内容放入文本区域时才有效。

我需要它才能工作,即使已经填充了textarea,然后点击“使用替代文字”#39; link将替换当前textarea中的所有内容。

任何建议都将受到赞赏。

5 个答案:

答案 0 :(得分:2)

只需将text更改为val

即可

演示:http://jsfiddle.net/a9Lyybef/

$("#get-alternative-text").click(function () {
    $("#the-text").val("this is the alternative text").show();
});

答案 1 :(得分:0)

使用.val()设置textarea值而不是.text()

 $("#get-alternative-text").click(function(){
      $("#the-text").val("this is the alternative text");
 });

Fiddle

答案 2 :(得分:0)

Textarea没有值属性,请使用text()html()

DEMO:http://jsfiddle.net/don/knrspx8e/1/

<强> jQuery的:

$("#get-alternative-text").click(function(){
     $("#the-text").text("this is the alternative text");
});

答案 3 :(得分:0)

我认为应该是这样的

http://jsfiddle.net/victor_007/qb3vwxLk/

 $(document).ready(function () {

    $("#get-alternative-text").click(function(){
     event.preventDefault();
     $("#the-text").val("this is the alternative text");
    });


 });

答案 4 :(得分:0)

试试这个

$("#get-alternative-text").click(function(){
   var txt = $.trim($('#the-text').val());
   if(txt.length==0)
   {
     $("#the-text").attr('value', "this is the alternative text");
   }
 });