2013-09-27 2 views
0

Мой код ниже:Скрыть «Ли» тег с помощью кнопки мыши с помощью JQuery

<ul class="classul"> 
<?php 
    $uid = $_REQUEST['uid']; 
    include("lib/db_function.php"); 
    $query = "SELECT * FROM tblproject"; 
    $exc = mysql_query($query) or die (mysql_error()); 
    while($val = mysql_fetch_array($exc)){ 
?>     
    <li id="li<?php echo $val['projectId']?>"><a href="#<?php echo $val['projectId']?>"><?php echo $val['projectName']?></a></li> 

    <?php } ?> 
    <li><img src="images/Plus-icon.png" width="30" height="30" id="addproject"></li> 
    <input type="hidden" name="uidhide" id="uidhide" value="<?php echo $uid;?>"> 
</ul> 



    <?php 
$qry ="SELECT * FROM tblproject"; 
    $re = mysql_query($qry) or die (mysql_error()); 
    while($data = mysql_fetch_array($re)){ 
?> 
<script language="javascript"> 
$(document).ready(function(e) { 
    var ul = $('.classul li').addClass('<?php echo $data['projectId'];?>'); 
      $("#hideproject<?php echo $data['projectId'];?>").click(function(e) { 
       ul.remove(); 


      }); 
}); 
    </script> 
<input type="button" name="hideproject" id="hideproject<?php echo $data['projectId'];?>" value="Hide Project"> 
<?php 
} 
?> 

Проблема: при нажатии на кнопку Hide Project скроет все li tag

Что мне нужно : когда я нажимаю на кнопку Скрыть проект Я хочу скрыть только один li tag с его собственным идентификатором, который я сгенерировал его в php.

+0

Пожалуйста, не путайте [tag: php] с [tag: html], показывая первое, не помогает, когда нам нужно увидеть последнее (jQuery и JavaScript в целом) работает на стороне клиента с визуализированным HTML. Можете ли вы показать пример этого? –

ответ

0

Try:

//ul.remove(); 
$("#li"+<?php echo $data['projectId'];?>).hide(); 
0

Попробуйте

<script language="javascript"> 
$(document).ready(function(e) { 
    var ul = $('.classul li').addClass('<?php echo $data['projectId'];?>'); 
      $("#hideproject<?php echo $data['projectId'];?>").click(function(e) { 
       ul.remove(); 
$(this).addClass('.classul'); // add this line 


      }); 
}); 
    </script> 
0

переменных 'уль' содержит список полного уль (т.е. всех Li элементов) из-за

$('.classul li') 

возвращает все ли. когда вы вызываете .remove, он все ли удален.

С минимальными изменениями, вы можете попытаться изменить приведенный выше код в

$('.classul li#'<?php echo $data['projectId']; ?>) 

Кроме того, зацикливание результат запроса к базе данных устанавливается для генерации HTML-код плох, зацикливание генерировать Javascript код, смешанный с PHP код хуже, если не худший.

Смежные вопросы