我是jQuery,php和数据库的新手,但我设法创建一个数据库,用该数据库中的php检索数据。
填写searchterm后,数据(从数据库中检索)将显示在结果页面中。例如:在搜索荷兰时,您将获得几个城市。这些城市都有额外的信息(人口,口语,国家等)。
显示城市,但必须提供额外信息,直到访问者点击带下划线的字词或图片。
问题:
最后一部分是问题所在。它似乎可以使用一个不可见的div,但是当我点击第二个结果时,第一个结果会再次切换。
使用一个查询检索数据:
$ result = $ db->查询(“SELECT City,Country,Touristinfo,Tel,Fax,Times,Email,MATCH(CityName)AGAINST('$ searchterm'IN BOOLEAN MODE)AS related FROM city WHERE MATCH( CityName)AGAINST('$ searchterm'IN BOOLEAN MODE)ORDER BY city“);
数据显示如下:
echo '<div class="small_box">
<p><strong>'.$row['City'].'</strong></p>
Click <u>here</u> for more info.
<table id="moredetails">
<tr><td>'.$row['Country'].'</td></tr>
<tr><td>'.$row['Touristinfo'].'</td></tr>
<tr><td>'.$row['Tel'].'</td></tr>
<tr><td>'.$row['Fax'].'</td></tr>
<tr><td>'.$row['Times'].'</td></tr>
<tr><td>'.$row['Email'].'</td></tr>
</table>
</div>
<div class="small_box_right">
<p></p>
<table>
<tr><td><i mg src ="'.$row['Logo'].'"></td></tr>
</table>
</div>';
我用于切换的js代码非常简单(但对于这种情况不够好):
(文档)$。就绪(函数(){
$("u").click(function () {
$('#moredetails').toggle();
});
});
答案 0 :(得分:1)
你不能重复使用那样的元素“id”值。每行的详细信息都需要自己的“id”。
如果带下划线的文本在行内,那么也许您可以将详细信息元素提供给“详细信息”类,然后让“click”处理程序执行以下操作:
$("u").click(function(e) {
$(this).closest("tr").find(".details").toggle();
});