我的问题是,在我进一步研究它之前,我的问题是:我怎样才能使这项工作变得更加容易和优于我所做的工作?
我有一个包含大量数据的数据库,我在表中查看所有这些数据。每个<td>
都包含<div title="">
,因此每个<td>
鼠标悬停的所有人都可以看到有关该数据项的更多信息。麻烦的是,它只能作为移动设备上的表格查看。要为新页面创建超链接是很困难的,因为这会使用户远离<table>
,而不仅仅是那个数据信息。所以我想使用jQuery UI。并且正在阅读&#34;基本对话&#34;选项。我试着把它放到我的脚本中,但我发现我的数据太多了。所以我创建了一个名为jq_scripts.php的文件。在那里,我有一个脚本来创建对话框选项。但首先我在标题中包含它:
<script src=\"//code.jquery.com/jquery-1.10.2.js\"></script>
<script src=\"//code.jquery.com/ui/1.11.4/jquery-ui.js\"></script>
<script src=\"jq_scripts.php\" type=\"text/javascript\"></script>
然后在脚本中我把它作为标准:
$(function() {
$( "#dialog" ).dialog({
autoOpen: false,
});
$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
});
});
但是由于我有很多不同的对话框,我需要一个#id来为每个按钮提供唯一的信息,所以这就是我作为一个脚本所拥有的:
echo "\$(function() {\n";
$result = mysqli_query($con, "SELECT * FROM $database WHERE type = 1");
$num = mysqli_num_rows($result);
if(!$result) {
die('Invalid query: ' . mysqli_error($con));
}
while($row = mysqli_fetch_array($result)) {
$id = $row['id'];
foreach($abo as $abo_vis) {
$abo_vis = strtolower(str_replace(' ', '', $abo_vis));
echo " \$( \"#dialog_" . $abo_vis . "_" . $id . "\" ).dialog({\n";
echo " autoOpen: false,\n";
echo " });\n\n";
echo " \$( \"#opener_" . $abo_vis . "_" . $id . "\" ).click(function() {\n";
echo " \$( \"#dialog_" . $abo_vis . "_" . $id . "\" ).dialog( \"open\" );\n";
echo " });\n\n";
}
}
echo "});\n";
这会创建一个包含12583行的查看文件!!!
在<td>
我已将此<a href="#" id="opener_<?php echo $abo_vis; ?>_<?php echo $id; ?>">_DATA_</a>
放在查看文件的底部,我创建了这个:
echo "<div id=\"dialog_" . $abo_vis . "_" . $id . "\" title=\"" . $abo_vis . "\">\n";
echo "<p>" . $dialog_info[$id] . "</p></div>\n\n";
这会使此文件比需要的时间长很多。最重要的是,我的<a href="#">
都没有。实际上,<div id="dialog...">
实际上显示了,而在演示中则隐藏了它。
答案 0 :(得分:1)
也许您的问题是您调用它的方式,而不是使用ID使用类:
echo "<div class=\"dialog_" . $abo_vis . "_" . $id . "\" title=\"" . $abo_vis . "\">\n";