从父ID拆分并显示子ID

时间:2019-04-10 11:13:47

标签: javascript jquery

我在父div上有一个ID为“ parentID”的div,并在此基础上向其所有子div中动态添加了“ ChildID”及其“ parentID”。

jQuery(document).on('click', '.split-id', function() {
  var parentID = jQuery('.parent').attr('id');
  var childID = jQuery('.child').attr('id', jQuery(this).closest('.parent').attr('id') + 'ChildID');

  jQuery('#displayParentID').html('Parent ID : ' + parentID);
  jQuery('#displayParentChildID').html('Parent Child ID : ' + childID);
  jQuery('#displayOnlyChildID').html('Child ID only : ' + childID);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="parent" id="parentID">
  <div class="child"></div>
  <div class="child"></div>
</div>

<div id="displayParentID"></div>
<div id="displayParentChildID"></div>
<div id="displayOnlyChildID"></div>

<a href="javascript:;" class="split-id">Split</a>

如何获取所有没有父div ID的子元素ID?就像下面的onClicking Split标签...

父母ID:parentID
亲子ID:parentIDChildID
仅儿童ID:儿童ID 这是我所期望的

Fiddle

1 个答案:

答案 0 :(得分:1)

不知道您要问的目的到底是什么,但是您可以用它替换小提琴中的js代码,它可以按预期工作。 *请注意,当您使用attr函数设置属性时,它返回的是Object,而不仅仅是字符串标签。 *如果您要为多个子代提供相同的ID,则将不起作用,因为在HTML代码中ID必须是唯一的

jQuery(document).on('click', '.split-id', function () { 

  var parentID = jQuery('.parent').attr('id');
  var childElement = jQuery('.child').attr('id', parentID + 'ChildID');
  var childID = childElement.attr('id');
  jQuery('#displayParentID').html('Parent ID : ' + parentID);
  jQuery('#displayParentChildID').html('Parent Child ID : ' + childID);
  jQuery('#displayOnlyChildID').html('Child ID only : ' + childID.replace(parentID, ''));  

});

如果您还有其他问题,请继续提问。