如何将PHP值传递到外部JavaScript文件
我正在尝试将我的变量从主页传递到外部JS文件。请看我的密码 主页:如何将PHP值传递到外部JavaScript文件,php,javascript,jquery,codeigniter,parameters,Php,Javascript,Jquery,Codeigniter,Parameters,我正在尝试将我的变量从主页传递到外部JS文件。请看我的密码 主页: <script type="text/javaScript"> $(document).ready(function(){ var add_project_link="<?= base_url().'add_project/show_form'; ?>"; var add_agent_link="<?= base_url().'agent/add_agent';?>"; }); </
<script type="text/javaScript">
$(document).ready(function(){
var add_project_link="<?= base_url().'add_project/show_form'; ?>";
var add_agent_link="<?= base_url().'agent/add_agent';?>";
});
</script>
我得到:
未捕获引用错误添加项目链接未定义
我认为外部JS会捕获主页中声明的变量。有什么想法吗?非常感谢 最简单的方法是将脚本放入php页面上的脚本标记中
您可以使用URL字符串变量路径,但我认为没有必要这样做,最简单的方法是将脚本放入php页面上的脚本标记中
您可以使用URL字符串变量路径,但我认为这是不必要的在调用外部JavaScript文件之前,请使用PHP定义变量:
<script type="text/javascript">
var site_url = '<?php echo site_url(); ?>';
var current_url = '<?php echo current_url(); ?>';
</script>
<script type="text/javascript" src="file.js"></script>
var site_url='';
var current_url='';
在external file.js中,您现在可以使用
site\u url
作为变量。在调用外部JavaScript文件之前,请使用PHP定义变量:
<script type="text/javascript">
var site_url = '<?php echo site_url(); ?>';
var current_url = '<?php echo current_url(); ?>';
</script>
<script type="text/javascript" src="file.js"></script>
var site_url='';
var current_url='';
在external file.js中,您现在可以使用
site\u url
作为变量。将php生成的变量从文档中取出。由于它们所在的ready event函数的关闭,它们在代码中的任何其他地方都无法访问。请将php生成的变量从document ready中取出。由于它们所在的ready event函数的关闭,它们在代码中的任何其他地方都无法访问。我要做的是将这些变量存储到JS稍后很容易调用的地方
<input type="hidden" id="hidden_var" value="<?= base_url().'add_project/show_form'; ?>" />
var add_project_link = $('#hidden_var').val();
我要做的是将这些变量存储到JS稍后很容易调用的东西中
<input type="hidden" id="hidden_var" value="<?= base_url().'add_project/show_form'; ?>" />
var add_project_link = $('#hidden_var').val();
您只需在head标记中写入
<script type="text/javaScript">
var add_project_link="<?= base_url().'add_project/show_form'; ?>";
var add_agent_link="<?= base_url().'agent/add_agent';?>";
</script>
var add_project_link=“”;
var add_agent_link=“”;
然后在上面的脚本之后加载外部JS,您只需在head标记中写入
<script type="text/javaScript">
var add_project_link="<?= base_url().'add_project/show_form'; ?>";
var add_agent_link="<?= base_url().'agent/add_agent';?>";
</script>
var add_project_link=“”;
var add_agent_link=“”;
然后在上面的脚本之后加载外部JS,最好的方法是将这些路径存储在一些标记中,如
<span id="site_url" style="display:none;"><?php echo site_url(); ?></span>
<span id="current_url" style="display:none;"><?php echo current_url(); ?></span>
最好的方法是将这些路径存储在一些标记中,如
<span id="site_url" style="display:none;"><?php echo site_url(); ?></span>
<span id="current_url" style="display:none;"><?php echo current_url(); ?></span>
我认为您应该使用它echo
而不是return
使此代码工作我认为您应该使用它echo
而不是return
使此代码工作不要在jQuery的$(文档)中定义JavaScript变量。ready(function(){})代码>在主页上。关键是在调用jQuery的外部文件之前定义它们。看看我的答案。不要在jQuery的$(document.ready(function(){})中定义JavaScript变量代码>在主页上。关键是在调用jQuery的外部文件之前定义它们。看看我的答案,这就是我的答案。不过运气不好+这就是我所拥有的。不过运气不好+1虽然此技术可以根据需要工作,但此建议可能会不必要地使用其他不必要的元素/节点膨胀DOM。虽然此技术可以根据需要工作,但此建议可能不必要地使用其他不必要的元素/节点膨胀DOM。