【问题标题】:jQuery change content of div with button press ( include() )jQuery 通过按下按钮更改 div 的内容( include() )
【发布时间】:2019-04-13 00:26:07
【问题描述】:

我需要一些基本的帮助,我找不到我的解决方案:(

我尝试在左侧设置带有一些按钮的菜单 (menu_kneeboard)。如果你点击某个东西,它会在content_kneeboard 部分打开另一个带有include() 函数的php 文件。我该怎么做?如果我使用.text 语句(?属性?)它可以工作,它会显示“它工作!”在content_kneeboarddiv。 但是在使用<?php include("map.php"); ?> 作为操作时,我怎样才能让它工作呢?

我试过.html(<?php include("map.php"); ?>),但它似乎不起作用。 .php 似乎不存在。

        <div class="menu_kneeboard">
        <script type="text/javascript">
            $(document).ready(function() {
                $("button").click(function() {
                    $(".content_kneeboard").text("IT WORKS!");
                })
            });

        </script>
        <button>click</button>
    </div>
    <div class="content_kneeboard">
        <p>old content</p>
    </div>

感谢您的帮助! :)

【问题讨论】:

  • 您是要打开模式还是重定向到 map.php 或只是将 .content_kneeboard 替换为 map.php?
  • 用 map.php 替换 .content_kneeboard :)
  • 您可以包含所有 php 文件并添加一个具有 css 属性 display: none; 的类,然后在按下按钮时删除要显示的文件的此类并将其添加到文件中已显示

标签: javascript jquery html button include


【解决方案1】:

我不确定map.php中的内容是什么,所以如果标记很多,这可能不是最好的解决方案,但是您可以将标记直接放在标签中:

$("button").click(function() {
    $(".content_kneeboard").empty(); //if there are other elements in this div you want to preserve, keep in mind this will remove those too.
    $(".content_kneeboard").html('<div id="map_content"></div>');
});

另一种选择是在初始页面加载时包含 php,但设置 display:none;,然后在您的按钮中单击您可以执行类似 (jquery) 的操作:

$("#map_content").fadeIn('fast');

或者用js:

document.getElementById(map_content).style.display = 'block';

这在很大程度上取决于 map.php 的内容究竟是什么。如果我们对实现有更多了解,它可能会在答案方面为您带来更好的结果。

我会补充一点,如果它有任何大量的标记,超过几个 div,我可能会选择在初始页面加载时将 php 包含为隐藏,然后在单击按钮时显示它。我一般就是这样处理这种事情的。

如果您需要更具体地了解如何实现它,请告诉我,我可以添加到这个答案中。

【讨论】:

  • map.php 中有很多文本 - 重要的是 - 它不仅仅是 map.php。左侧会有很多按钮,会改变中间的内容(content_kneeboard)。所以我认为不显示它们的想法是最好的。但是没有一个简单的解决方案,只需将 main.php (以及按钮单击时的其他文件)包含在 “命令”?
  • imgur.com/a/FylcS6L 这就是现在的样子。左边的每个按钮都应该改变中间的内容(地图在哪里知道)。但是用户可以在某些设置中更改他使用的飞机和地图,因此即使对于清单,我也想将近 30 个不同的 php 文件(清单)加载到内容区域(取决于设置中选择的飞机)。跨度>
  • 啊,我看到了“护膝”,想知道它是否与航空有关。我这样做的方法是在按钮单击时使用 Ajax 请求来获取 map.php 的内容或需要加载的任何其他内容,然后将内容回显到 Ajax 响应中,然后您将在其中分出使用 JavaScript 的内容。如果需要,我可以稍后添加一个示例,但请搜索 Ajax 请求。例子很多。
  • 是的,与航空有关:D。哦,该死-听起来很复杂:-O!我会研究一下,非常感谢!
  • 一旦你对它有了感觉就不会太糟糕,它会为你的应用打开很多可能的用例。我经常使用它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-02
  • 1970-01-01
  • 2023-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多