如何访问jquery中动态创建的元素id


How to access dynamically created element id in jquery?

我正在尝试使用jQuery访问动态创建的id。

我正在动态创建<li>元素,并在使用以下代码创建它的同时向它添加id。

<?php foreach ($alerts as $a) : ?>
<li id="<?php echo $a['value']['alert_name']; ?>"><?php echo $a['value']['alert_name']; ?> <a href="#" class="edit-link tip-open" data-oid="<?php echo $a['oid']; ?>" data-eid="<?php echo $a['value']['alert_name']; ?>">edit</a></li>
<?php endforeach; ?>

在这里,我使用php数组的值向li元素添加了id。

现在我想用他们的id删除那个li。我的问题是,当我写(#id).remove()时,它并没有从页面中删除那个li元素。

当我检查页面视图源时,我发现Id不在那里,当我按F5时,Id在那里。

请帮助我在重新加载页面时使用动态分配的id删除那个li元素。

我正试图使用另一个名为jquery-func.js的文件中的以下代码来删除那个li:

$("#"+response['aname']).remove();

这里的响应数组包含id的名称。

根据我的分析,jquery没有得到那个动态id,因为当按下F5时,li能够删除

你可以像一样尝试

$("li[id='"+id+"']").remove();

或者这也可以

$("#"+id).remove();

并确保id应该不同,并且不重复

选择动态创建的HTML元素。

现在您必须使用.on()

点击此处阅读更多

您可以尝试删除元素,方法是通过其类进行标识:

<?php foreach ($alerts as $a) : ?>
<li id="<?php echo $a['value']['alert_name']; ?>"><?php echo $a['value']['alert_name']; ?> <a href="#" class="edit-link tip-open" data-oid="<?php echo $a['oid']; ?>" data-eid="<?php echo $a['value']['alert_name']; ?>">edit</a>
<a class="yourClass">delete</a></li>
<?php endforeach; ?>

然后在您的jQuery中:

$(".yourClass").click(function() {
    $(this).parent().remove();
});

您有

<?php echo $a['value']['alert_name']; ?> 

类似ID名称

那么您应该将这个值名称与#一起使用

我猜这个php echo的值是例如"foo"

然后我使用:

$('#foo').remove()

不依赖于ID或任何指标,您可以像这样尝试

<li>
  <a class="rmv">test</a>
</li>

在您的Jquery 中

$('.rmv').click(function(){
  $(this).parent('li').remove();
});

如果你想删除li,那么很简单:

Java脚本代码:

<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $('a.delete').on('click', function(){
        $(this).parent().remove();
    });
});
</script>

PHP代码:

<?php 
$alerts = array('Apple','Banana','Cat');
foreach ($alerts as $i => $a) : ?>
<li id="li_<?php echo $i;?>">
    <?php echo $a; ?> 
    <a href="#" class="edit-link tip-open" data-oid="<?php echo $a; ?>" data-eid="<?php echo $a; ?>">edit</a>
     | 
    <a href="#" class='delete'>delete</a></li>  
<?php endforeach; ?>

我希望你能理解:)