获取嵌套范围上的值

时间:2018-08-16 07:29:40

标签: javascript jquery html

我正在实现网站的标记功能,需要使用jQuery获取单个标记的值(在本例中为“ foo”,“ bar”,“ baz”),以推送到数据库中。 无论出于什么原因,我似乎都没有遇到这个问题……

通过输入字段添加标签会在<span class="tagval">内的<span class="tag">内创建一个新的<div id="tags_tagsinput">

我需要获取“ tagval”跨度的值,但是即使对此主题进行了深入研究也无法管理。

这是HTML代码段:

var tagValue = $(".tagval").html();
console.log("tagValue is:" + tagValue);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="tags_tagsinput" class="tagsinput">
  <span class="tag">
    <span class="tagval">foo</span>
    <span class="tagval">bar</span>
    <span class="tagval">baz</span>
  </span>
</div>

我总是通过.value或.text得到的唯一结果是“未定义”… 会很高兴获得您的支持:)

5 个答案:

答案 0 :(得分:2)

在这里您可以使用javascript / jquery

<script>
    var spans = document.querySelectorAll('span.tagval');
    spans.forEach(function(span){
    console.log(span.innerText)
})
</script>

答案 1 :(得分:0)

您可能需要一个onload处理程序和一个each循环。它是这样的。

$(document).ready(function(){
  $(".tagval").each(function(){
    var tagValue = $(this).text();
    console.log("tagValue is:" + tagValue);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="tags_tagsinput" class="tagsinput">
  <span class="tag">
    <span class="tagval">foo</span>
    <span class="tagval">bar</span>
    <span class="tagval">baz</span>
  </span>
</div>

答案 2 :(得分:0)

这应该有效:

$('.tag .tagval').text();

答案 3 :(得分:0)

尝试

$(document).on('mouseover', '.tagval', function () {
    var spanVal=$(this).val()
    alert(spanVal);
    });

答案 4 :(得分:0)

尝试一下:-

使用.text()方法在text元素中获取span

var spanval=$('.tagval').text();
console.log(spanval);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="tags_tagsinput" class="tagsinput">
  <span class="tag">
    <span class="tagval">foo</span>
    <span class="tagval">bar</span>
    <span class="tagval">baz</span>
  </span>
</div>