分父母和两个孩子,得到其他孩子的一个孩子的身份

时间:2017-01-05 11:15:51

标签: javascript jquery html svg

我想在jquery中获取我的svg的id,我尝试这个jquery但它是未定义的。

$(event.target).children('svg').attr("id")

Target.event返回p的数据,当我查看父亲内部时我有mmy列:

<div class="col-md-4">
  <div class="zone" >
          <svg id="graphItem0_2" with="300" height="300"></svg>
          <p class="glyphicon glyphicon-chevron-down" style="position: absolute;  top: 300px; right:20px;" data-toggle="collapse" data-target="#demo2"></p>
    </div>
</div>

当我尝试$(svg).attr(“id”)时,我的页面中有很多svg元素,我得到的只是第一个元素但是当我点击另一个svg它是相同的id然后我的其他svg没有相同的身份。

3 个答案:

答案 0 :(得分:3)

您可以将事件点击附加到父div zone,然后使用jQuery对象$(this)搜索svg:

$('.zone').on('click',function(){
  alert( $(this).find('svg').attr("id") );
})

希望这有帮助。

&#13;
&#13;
$('.zone').on('click',function(){
  alert( $(this).find('svg').attr("id") );
})
&#13;
.zone{
  background-color: red;
}
svg{
  background-color: green;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="zone" >
  <svg id="graphItem0_2" with="300" height="300"></svg>
  <p class="glyphicon glyphicon-chevron-down" style="position: absolute;  top: 300px; right:20px;" data-toggle="collapse" data-target="#demo2"></p>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

尝试这样的事情。

$(".zone").click(function(){
  var id = $("svg").attr("id");
  alert(id);
});

答案 2 :(得分:0)

请你试试这个: -

var x = document.getElementById("svg").id;

如果页面上只有1个svg元素,它将很有用。