我的index.php上有这段代码(index.php有自己的CSS文件):
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("select").click(function() {
var destino = document.formu0.list0.value
var lista = "#listaP"+destino;
$(lista).toggle(2000)
});
});
</script>
在另一个文件中,我有一个生成HTML代码的php代码,menuP是包含的标签(display:none; padding-right:10px;):
echo '<tr>';
echo '<td>';
echo '<div id="lista0">';
echo '<form name="formu0">';
echo '<select size="10" name="list0">';
for ($i = 0; $i < count($cidades); $i++)
echo '<option value="'.($i).'">'.$cidades[$i][0].'</option>';
echo '</select></form></div></td>';
echo '<menuP>';
for ($i = 0; $i < count($cidades); $i++)
{
$k = 0;
echo '<td>';
echo '<div id="listaP'.$i.'">';
echo '<form name="formuP'.$i.'">';
echo '<select size="6" name="listP'.$i.'">';
for ($j = 0; $j < count($resultsA); $j++)
if ($resultsA[$j][0] == $cidades[$i][0])
{
if(count($resultsA[$j])==6)
$tipo = 'Onibus';
else
$tipo = 'Aviao';
echo '<option value="'.($k).'">'.'Preco R$: '.$resultsA[$j][1].' Tipo: '. $tipo .'</option>';
$k++;
}
echo '</select></form></div></td>';
}
echo '</menuP>';
我在这里做错了吗?尽管“destino”和“lista”具有正确的值,并且使用空白网站对其进行测试,但代码仍无法正常工作。基本功能是隐藏/显示与用户点击的城市相对应的特定数据列表。
答案 0 :(得分:0)
“menuP是包含的标签(display:none; padding-right:10px;)”
有你的问题。如果祖先元素不可见,则切换后代元素的可见性将无效。
这是一个小提琴演示:http://jsfiddle.net/32eXp/
您需要找到一种方法使<menuP>
元素可见。