jquery show()无效

时间:2012-02-26 21:37:20

标签: php jquery

我在php中创建一个待办事项列表应用程序并使用无序列表打印出来。我想要的是显示要首先显示的待办事项列表的标题,其内容最初隐藏但稍后通过jQuery中的click事件显示这是我到目前为止所尝试过的......

<?php 
include_once "connect_to_mysql.php";
$name = $_POST['name'];
$todo = $_POST['todo'];
$sql = mysql_query("INSERT INTO todo (todo,name) 
 VALUES('$todo','$name')")  
 or die (mysql_error());
 $sql2 = mysql_query("SELECT DISTINCT name FROM todo");
$todofeed .= ' <ul id = "nav">';         
while($row = mysql_fetch_array($sql2))
{
$name1 = $row["name"];
$todofeed.='<li class="title"><a href="#">' . $name1 . '</a></li>';

$sql3 = mysql_query("SELECT id, todo FROM todo WHERE name='$name1' ");
while($row = mysql_fetch_array($sql3))
{$todo1 = $row["todo"];

    $todofeed.='<ul>
    <li id="items">' . $todo1 . '</li>
</ul>';}}
    $todofeed .= '</ul>';     
     print "$todofeed";

    ?>
    <style type="text/css">

  li#items
    {
   display:none;
  }
     </style>
      <script src="http://code.jquery.com/jquery-latest.js"></script>
      <script type="text/javascript">
$(document).ready(function() {


$('ul#nav li#title').click(function() {
 $('li#items').css('display' , 'visible');
});
});
       </script>

任何解决此问题的方法?

3 个答案:

答案 0 :(得分:2)

$('ul#nav li.title').click(function() {

因为你的

$todofeed.='<li class="title"><a href="#">' . $name1 . '</a></li>';

答案 1 :(得分:2)

您的list元素有一个类名而不是ID,请尝试

$('ul#nav li.title')

答案 2 :(得分:0)

我建议使用&#34; a&#34;而是&#34; li.title&#34;,以防止默认链接点击行为

$('#nav').on('click', 'li.title a', function(event) {
    event.preventDefault();
    $('#nav .items').hide(); 
})

http://jsfiddle.net/acrashik/JaPbV/1/