【问题标题】:How to add text in textarea using jquery without removing previous text如何使用 jquery 在 textarea 中添加文本而不删除以前的文本
【发布时间】:2015-01-31 13:15:02
【问题描述】:

如何使用 jquery 在 textarea 中添加文本而不删除以前的文本。

    $('.btn-uservar').on('click', function (){             

         var insertText = $('#uservar').val();                           
         $('#template').append(" "+insertText);

    });

但它只适用于第一次。当我再次点击时它什么也不做。

【问题讨论】:

    标签: html


    【解决方案1】:

    使用 val 追加文本区域的值而不是追加。

    $('#template').val($('#template').val() + " "+insertText); 
    

    在 dom 内部,textarea 标签的 value 和 text 属性是分开存储的。当您使用 append 时,文本会被附加,但该值是空白的,因为它不再与文本一致。我相信你对 $('#tempnplate').va() 的第二次调用返回的是空白值,而不是附加的文本。

    请参阅此链接中的答案,它很好地解释了问题。 append not appending to textarea after text edited

    【讨论】:

      【解决方案2】:

      改为将其创建为函数。我在 AJAX 上遇到过这个问题,它只工作一次,这似乎解决了它。将旧的和新的都创建为变量,然后将它们连接起来。

      $('.btn-uservar').click(function(){
        appendText();
      }
      
      
      function appendText(){
          var textareaText = $('textarea').val();
          var insertText = $('#uservar').val();
          $('textarea').val(textareaText + insertText);
      }
      

      【讨论】:

        【解决方案3】:

        你可以用这个:

        $(document).ready(function () {
            $('.btn-uservar').on('click', function () {
                $('textarea').append(" ").append($('#uservar').val());
            });
        });
        

        【讨论】:

          猜你喜欢
          • 2011-02-28
          • 2013-04-28
          • 2023-01-03
          • 2011-10-26
          • 1970-01-01
          • 1970-01-01
          • 2011-06-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多