2013-07-03 110 views
-4

我想使用jQuery访问动态创建的ID。如何在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数组的值加到id来li元素。

现在我想用自己的id.My问题,请删除,李是当我写(#id).remove()其不去除页面li元素。

当我查看页面查看源代码,我发现编号是不存在的,当我按F5 ID是存在的。

请帮我使用他们的动态分配的id删除该li元素与我重新加载页面。

我想删除使用下面的代码,李在名为jQuery的func.js anither文件:

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

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

按我的分析jQuery是没有得到该动态ID时按F5里,能有效去除

+4

ID在上下文页面中必须是唯一的。提供呈现的HTML代替不可读的PHP代码 –

+0

通过发布相关代码改善您的问题。你是如何删除li元素的? –

回答

1

,因为你可以尝试像

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

或者这也将工作

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

而且makesure这id应该是不同的,而不是重复

+0

如果重复的ID,这将删除所有,但是通常这是如何处理uggly代码;)第二个将只适用于第一个匹配元素 –

+0

我不认为这会有所作为 – MaVRoSCy

+0

我认为他没有重复ID – Gautam3164

1

选择动态创建的HTML元素。

现在你必须使用.on()

更多here

0

你有

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

像ID名称

,那么你应该使用这个值名称以#

我想这个PHP回声的价值exampe“foo”

然后我用:

$('#foo').remove() 
0

不依靠ID或任何指标,你可以尝试这样的

<li> 
    <a class="rmv">test</a> 
</li> 
在jQuery的

$('.rmv').click(function(){ 
    $(this).parent('li').remove(); 
}); 
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; ?> 

Th带你的jQuery:

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

如果你想删除李则显得非常简单:

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; ?> 

我希望你明白: )

相关问题