在特定包含的php文件中加载js文件

时间:2018-06-02 02:03:09

标签: javascript php

我发现在php文件中加载js文件有些问题。我有文件php admin-pp-sipp-litbang.php 。在该文件中,我包含一些带有 switch case 的php文件:

 <div class="col-sm-9 col-sm-offset-3 col-lg-10 col-lg-offset-2 main">
        <?php
        switch (@$_GET['modul']) {
            case "beranda":
                include "tampilan-admin-pp/beranda.php";
                break;
            case "permintaanakun":
                include "tampilan-admin-pp/permintaanakun.php";
                break;
            case "permintaanpp":
                include "tampilan-admin-pp/permintaanpp.php";
                break;
            case "chat":
                include "tampilan-admin-pp/chat.php";
                break;
            case "detailsproposal":
                include "tampilan-admin-pp/details_proposal.php";
                break;
            case "detailspermintaanakun":
                include "tampilan-admin-pp/details_permintaanakun.php";
                break;
            case "detailspengguna":
                include "tampilan-admin-pp/details_pengguna.php";
                break;
            default:
                include "tampilan-admin-pp/beranda.php";
        }
        ?>
    </div><!--/.main-->

之后,我在关闭body标签附近的admin-pp-sipp-litbang.php上加载tampilan-admin-pp / chat.php的js文件。这是js文件。

        <script id="message-template" type="text/x-handlebars-template">
    <li class="clearfix">
        <div class="message-data align-right">
            <span class="message-data-time" >{{time}}, Today</span> &nbsp; &nbsp;
            <span class="message-data-name" >Olia</span> <i class="fa fa-circle me"></i>
        </div>
        <div class="message other-message float-right">
            {{messageOutput}}
        </div>
    </li>
</script>

<script id="message-response-template" type="text/x-handlebars-template">
    <li>
        <div class="message-data">
            <span class="message-data-name"><i class="fa fa-circle online"></i> Vincent</span>
            <span class="message-data-time">{{time}}, Today</span>
        </div>
        <div class="message my-message">
            {{response}}
        </div>
    </li>
</script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/3.0.0/handlebars.min.js'></script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/list.js/1.1.1/list.min.js'></script>

<script type="text/javascript" src="tampilan-admin-pp/chat/jss/load_list_user_chat.js"></script>
<script type="text/javascript" src="tampilan-admin-pp/chat/jss/UserOnline.js"></script>

<script type="text/javascript" src="tampilan-admin-pp/chat/jss/index.js"></script>

问题是tampilan-admin-pp / chat.php的js文件会影响另一个包含的文件。如何才能为tampilan-admin-pp / chat.php加载那些js文件?

2 个答案:

答案 0 :(得分:1)

有什么理由可以将admin-pp-sipp-litbang.php底部的dotnet sln <path-to-solution.sln> add <path-to-project.csproj>标签移到tampilan-admin-pp / chat.php?

如果您需要将它们包含在admin-pp-sipp-litbang.php的末尾,那么您将需要在把手模板之后使用另一个switch语句或类似的逻辑。

更新:

问题在于,<script>语句有条件地包含了您的php文件,但您的聊天&#34;每次都包含javascript文件。您还需要有条件地包含javascript文件。您只需将switch标记添加到原始<script>语句中,但通常会在switch结束标记之前加载javascript,就像您所做的那样。为了保持这一特性,在包含js文件之前,在admin-pp-sipp-litbang.php的底部添加另一个</body>语句。

<强>因此

switch

<强>变为:

<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/3.0.0/handlebars.min.js'></script>
<script src='http://cdnjs.cloudflare.com/ajax/libs/list.js/1.1.1/list.min.js'></script>

<script type="text/javascript" src="tampilan-admin-pp/chat/jss/load_list_user_chat.js"></script>
<script type="text/javascript" src="tampilan-admin-pp/chat/jss/UserOnline.js"></script>

<script type="text/javascript" src="tampilan-admin-pp/chat/jss/index.js"></script>

通过这种方式,您可以添加与文件顶部的其他<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> <script src='http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/3.0.0/handlebars.min.js'></script> <script src='http://cdnjs.cloudflare.com/ajax/libs/list.js/1.1.1/list.min.js'></script> <?php switch($_GET['modul']): case 'chat': ?> <script type="text/javascript" src="tampilan-admin-pp/chat/jss/load_list_user_chat.js"></script> <script type="text/javascript" src="tampilan-admin-pp/chat/jss/UserOnline.js"></script> <script type="text/javascript" src="tampilan-admin-pp/chat/jss/index.js"></script> <?php break;?> <?php endswitch;?> 匹配的其他case语句,以有条件地包含其javascript。

答案 1 :(得分:0)

也许在tampilan-admin-pp / chat.php中制作一些变量。 像$chatIncluded = true;

这样的东西

然后条件渲染脚本标记,如果定义了chatIncluded并且为true,则加载JS文件。