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

时间:2013-07-03 07:47:36

标签: php jquery html

我正在尝试使用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时能够删除

6 个答案:

答案 0 :(得分:1)

您可以尝试

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

或者这也可行

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

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

答案 1 :(得分:1)

选择动态创建的HTML元素。

现在你必须使用.on()

了解更多here

答案 2 :(得分:1)

您可以尝试通过类别识别元素来删除元素:

<?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();
});

答案 3 :(得分:0)

你有

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

喜欢ID名称

然后你应该使用#

这个值名称

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

然后我用:

$('#foo').remove()

答案 4 :(得分:0)

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

<li>
  <a class="rmv">test</a>
</li>
在你的Jquery中

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

答案 5 :(得分:0)

如果你想删除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; ?>

我希望你明白:)