我发现在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>
<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文件?
答案 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文件。