使用下拉菜单更改SQL查询结果的显示方式

时间:2014-08-14 13:22:53

标签: javascript php sql arrays drop-down-menu

我使用下面的方法使用下拉菜单更改查询的SQL结果的显示样式。我正在尝试为普通视图或图库视图创建选项等。我还没有找到任何相关信息(这只表示我没有搜索正确的事情,或采取正确的方法)。我也尝试使用INCLUDE外部文件来集中设计。

这种方法对我没用。主要是因为包含的文件充满了带引号/双引号的代码(太多不能逃脱)。

<script type="text/javascript">
    var textBlocks = new Array(
    '<?php include "../include/normal_view.php" ?>',
    '<?php include "../include/gallery_view.php" ?>',
    '<?php include "../include/mini_view.php" ?>');
    function changeView(elemid) {
    var ind = document.getElementById(elemid).selectedIndex;
    document.getElementById("display").innerHTML=textBlocks[ind];}
</script>

<form>
<select id="whatever" onChange="changeView('whatever');">
<option value="0">Normal</option>
<option value="1">Gallery</option>
<option value="2">Minimum</option>
</select><br>
</form>

<div id="display"><?php include "../include/normal_view.php" ?></div>

包含的页面类似于以下内容;

<div id="normal_view">
  <?php 
      $result = $con->query("SELECT * FROM db_whatever");
        while ($row = $result->fetch_assoc()) { ?>
        <div class="normal_view">
            <ul>
                <li class="price"><?php echo $row['PRICE']; ?></li>
                <li class="address"><?php echo $row['ADDRESS']; ?></li>
                <li class="bed"><?php echo $row['BEDS']; ?></li>
                <li class="bath"><?php echo $row['BATH']; ?></li>
            </ul>
        </div>  
<?php } //end of loop ?> 
</div>

这是正确的做法吗? 如果是这样,有没有办法可以命令脚本忽略INCLUDED文件中的所有逗号/双逗号? 你能推荐一个好的教程或例子吗?

1 个答案:

答案 0 :(得分:0)

我不认为你正在使用正确的方法。

HTML应该包含在HTML中,而不是javascript中的文本字符串。 您可以在display: none上拥有它们,直到您需要它们为止。无需逃避任何报价。