在Foreach循环中使用jQuery添加类

时间:2014-07-03 08:09:47

标签: php jquery if-statement foreach

我正在jQuery循环中运行foreach脚本以动态添加html中的类。我想在不同的事件状态上添加两个不同的类,但它同时添加了类{{{ 1}} if条件中的条件和类。

这是我的代码

else

但它在<?php foreach( $events as $event ){ if ($event->status=='new'){ ?> jQuery( ".upcoming-events" ).addClass( "new_event" ); <?php } else { ?> jQuery( ".upcoming-events" ).addClass( "old_event" ); <?php } } ?> div。

中添加了两个类

任何提示???

3 个答案:

答案 0 :(得分:1)

检查我的代码以获取答案

<?php foreach( $events as $event ){
if ($event->status=='new'){ ?>
jQuery( ".upcoming-events" ).removeClass( "old_event" );

jQuery( ".upcoming-events" ).addClass( "new_event" );
<?php }
else {
?>
jQuery( ".upcoming-events" ).removeClass( "new_event" );
jQuery( ".upcoming-events" ).addClass( "old_event" );
<?php } } ?>

答案 1 :(得分:1)

&#34; .upcoming事件&#34; selector选择具有即将发生的事件类的所有元素,因此如果你有任何新事件,你将把new_event类添加到所有元素,而不仅仅是当前元素。

您必须按id选择元素,例如。

答案 2 :(得分:1)

你可以使用Mrinmoy,但这里更简化,

<?php 
foreach( $events as $event ){
if ($event->status=='new'){ 
?>
jQuery( ".upcoming-events" ).removeClass( "old_event" ).addClass( "new_event" );
<?php 
} else { 
?>
jQuery( ".upcoming-events" ).removeClass( "new_event" ).addClass( "old_event" );
<?php 
} } 
?>