jQuery:从附近的元素获取文本内容并打印为模式标题

时间:2019-01-16 18:13:18

标签: javascript jquery twitter-bootstrap dom

使用jQuery,如何获取与clicked标签位于同一div内的元素的文本内容,然后将该文本内容存储为变量,然后立即将其打印到模式标题?

此刻,以下代码仅获取每张卡的所有六个标题并将它们全部打印到模式标题中。我已经尝试过使用.closest()、. next()和$(this)之类的不同功能,但是我无法使其正常工作!我在某处使用.eq()读取了数组函数,但不确定如何根据单击的六个标签中的哪个来更改数组编号。

我无法在此处生成完整的HTML和jQuery,但可以在下面放置相关的代码段:

<div class="modal-header">
   <h5 id="InsertTitle" class="modal-title"></h5>
</div

...

<div class="card">
   <div class="card-header">
      <i onClick="add()" class="i-hover"></i>
      <h4 class="mb-0">Title</h4>
   </div>
   <div class="card-body">
      ...
   </div>
</div>

...

function add() {
        var title = $('i.i-hover').next("h4").text();
        console.log(title);
        $("#InsertTitle.h5").text(title);
    }

1 个答案:

答案 0 :(得分:0)

您可以像这样使用它

function add(el) {
    var title = $(el).next("h4").text();
    console.log(title);
    $("#InsertTitle.h5").text(title);
 }

以html

<i onClick="add(this)" class="i-hover"></i>
  

注意:直接在函数中使用$(this)可能未引用所需的元素..因此您可以为此参数传递参数。