我制作了某种购物车,当我按下表格线时,它假设打开有关该项目的一些详细信息,为此我使用了一个高度为 0 且最初隐藏的 div,其中包含详细信息,问题是我认为无论是否按下该行,浏览器都会加载信息页面。有没有办法让浏览器仅在他的 DIV 可见时才加载页面?
$int = 0;
echo "<table class=\"result_table\" id=\"result_table\">";
foreach($types as $data){
echo "<tr onClick=\"present(".$int.");\" >";
echo "<td align=\"right\">";
echo $data['number'];
echo "</td>";
echo "<td align=\"right\">";
echo $data['item_name'];
echo "</td>";
echo "<td align=\"right\">";
echo $data['amount'];
echo "</td>";
echo "<td align=\"right\">";
echo "17";
echo "</td></tr>";
echo "<tr class=\"info_row\"><td colspan=\"4\"><div id=\"div_num_".$int."\" style=\"height:0px\">
<object type=\"text/html\" data=\"page.php\" style=\"width:100%; height:100%; margin:0%;\">
</div></td></tr>";
$int++;
}
echo "</form></table>";
行的 CSS
.info_row{
visibility:hidden;
}
JS:
function present(item_id){
var div = document.getElementById("div_num_"+item_id);
if(div.style.visibility=="visible"){
div.style.visibility = 'hidden';
div.style.height= '0';
} else {
div.style.visibility = 'visible';
div.style.height= "200px";
}
}
正如您可以看到页面加载的所有信息但不可见。解决这个问题的其他好方法将被应用,特别是如果它不包括 jquery,因为我不是很擅长它。
提前致谢。