我在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>
任何解决此问题的方法?
答案 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();
})