0

我有div一个类textareaedit,其中可以包含多个p(段落)。但我只想抓住最后一段并处理该文本。

我的 HTML 是这样的:

<div class="textareaedit">
<p>  </p>
<p>  </p>
</div>

还有我的 javascript:

$thisinput = $('forminput');

$taedit = $('.textareaedit');
    var $target = $taedit.children(); //in case there is more than one <p> here

  while( $target.length ) {
  $target = $target.children();
   }            

  $target.end().text($thisinput.val()) ;

每当用户将注意力集中在表单元素上时,就会触发此代码forminput。我希望用户的文本转到$taedit. 但是如果$taedit碰巧有多个段落,那么每次用户输入forminput,然后$taedit复制其中的文本。

示例:如果$taedit只有一个p,那么当用户输入 时This is my text$taedit如下所示:

This is my text

但是如果$taedit碰巧有两个p,那么当用户输入时This is my text(只有一次!),然后$taedit看起来像这样:

This is my text
This is my text

如果用户再次输入它,它会加倍:

This is my text
This is my text
This is my text
This is my text

我知道由于循环必须发生某些事情while,但我不明白的是我只调用$target.end()一次......所以文本应该只附加到最后一段?我的目标是没有重复,不管有多少p

4

1 回答 1

1

不知道为什么你需要while循环?您可以将 while 循环和最后一条语句替换为:

$target.last().text($thisinput.val());
于 2013-01-20T11:23:02.947 回答