Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从具有相同类的div中获取文本值,并在另一个div中显示?_Javascript_Jquery - Fatal编程技术网

Javascript 如何从具有相同类的div中获取文本值,并在另一个div中显示?

Javascript 如何从具有相同类的div中获取文本值,并在另一个div中显示?,javascript,jquery,Javascript,Jquery,示例如下: 单击[+]图标时,如何在灰色div中显示绿色div的文本?我尝试过很多不同的场景,但都不管用,如果有人能给我一些建议,我会非常感激 <div id="wrapper"> <div class="container"> <div class="first" id="f"> <div class="set">+</div> this is the 1st

示例如下:

单击[+]图标时,如何在灰色div中显示绿色div的文本?我尝试过很多不同的场景,但都不管用,如果有人能给我一些建议,我会非常感激

    <div id="wrapper">
      <div class="container">
        <div class="first" id="f">
          <div class="set">+</div>
          this is the 1st element
        </div>
        <div class="first" id="s">
          <div class="set">+</div>
          this is the 2nd element
        </div>
        <div class="first" id="t">
          <div class="set">+</div>
          this is the 3rd element
        </div>
      </div>

      <div id="cc"></div>
    </div>
您可以使用以下选项:

$(document).ready(function(){

  $('.set').click(function(){
    var text = $(this).parents("div.first").text();
    $("#cc").text(text);
  })

});

这个代码可以帮助你

var tempText="";

$('.container .set').each(function(){
tempText=tempText+ $(this).html();

});

$('#cc').html(tempText);
试试这个(小提琴:)

JQ:


我猜您不希望复制的文本包含“+”符号?在这种情况下,您可以执行以下操作:

$('.set').click(function() {
    var text = $(this.nextSibling).text().trim();
    $('#cc').text(text);
});
演示:

请注意,通过将文本包装到某个容器中,稍微改进HTML结构是有意义的:

<div class="first" id="s">
  <div class="set">+</div>
  <div class="text">this is the 2nd element</div>
</div>

演示:

您必须获取的文本。首先,我建议您将文本放入标记中,这样很容易获取,并且不会获取.get按钮的+。 这是新的JavaScript

$(document).ready(function(){

  $('.set').click(function(){

    // Get the text inside the span in the parent .first of the clicked .set button
    var text = $(this).parent('.first').find('span').text();
    $('#cc').text(text);
 });

});
HTML将如下所示

<div class="container">
  <div class="first" id="f">
    <div class="set">+</div>
    <span>this is the 1st element</span>
  </div>
  <div class="first" id="s">
    <div class="set">+</div>
    <span>this is the 2nd element</span>
  </div>
  <div class="first" id="t">
    <div class="set">+</div>
    <span>this is the 3rd element</span>
  </div>
</div>
<div id="cc"></div>

+
这是第一个元素
+
这是第二个要素
+
这是第三个元素

这里有一个更新的

把它放到你的头上的html部分。或身体部分的底部

<script>
$(document).ready(function() {
  $('.set').on('click', function(){
   var text_val = $(this).closest('div.first').text();
   $('#cc').text(text_val);
  });
});
</script>

$(文档).ready(函数(){
$('.set')。在('click',function()上{
var text_val=$(this).closest('div.first').text();
$('#cc').text(text_val);
});
});

感谢您的所有解决方案,我尝试了所有解决方案,感谢您的时间和快速响应。该死的,我不能投票给代表率仍然很低的用户。
$(document).ready(function(){

  $('.set').click(function(){

    // Get the text inside the span in the parent .first of the clicked .set button
    var text = $(this).parent('.first').find('span').text();
    $('#cc').text(text);
 });

});
<div class="container">
  <div class="first" id="f">
    <div class="set">+</div>
    <span>this is the 1st element</span>
  </div>
  <div class="first" id="s">
    <div class="set">+</div>
    <span>this is the 2nd element</span>
  </div>
  <div class="first" id="t">
    <div class="set">+</div>
    <span>this is the 3rd element</span>
  </div>
</div>
<div id="cc"></div>
<script>
$(document).ready(function() {
  $('.set').on('click', function(){
   var text_val = $(this).closest('div.first').text();
   $('#cc').text(text_val);
  });
});
</script>