如何将javascript变量传递给site_url的参数值?
我想做一个ajax调用:如何将javascript变量传递给site_url的参数值?,javascript,php,codeigniter,codeigniter-3,Javascript,Php,Codeigniter,Codeigniter 3,我想做一个ajax调用: function loadView(url_, target, pk, json_extra_data) { var ret = ""; if (isNaN(pk) == false && typeof(pk) !== "boolean" && $.trim(pk) != "" && pk > 0) { if (target == "MN") { ret = $.ajax({
function loadView(url_, target, pk, json_extra_data) {
var ret = "";
if (isNaN(pk) == false && typeof(pk) !== "boolean" && $.trim(pk) != "" && pk > 0) {
if (target == "MN") {
ret = $.ajax({
data: json_extra_data,
type: "POST",
url: "<?php echo site_url('meeting/modif'); ?>/" + pk,
async: false
}).responseText;
} else if (target == "EQ") {
ret = $.ajax({
data: json_extra_data,
type: "POST",
url: "<?php echo site_url('enquete/questionnaire'); ?>/" + pk,
async: false
}).responseText;
}
}
return ret;
}
函数加载视图(url、目标、pk、json、额外数据){
var ret=“”;
如果(isNaN(主键)=false&&typeof(主键)!=“boolean”&&&$.trim(主键)!=”&&pk>0){
如果(目标==“MN”){
ret=$.ajax({
数据:json_额外_数据,
类型:“POST”,
url:“/”+pk,
异步:false
}).responseText;
}否则如果(目标==“EQ”){
ret=$.ajax({
数据:json_额外_数据,
类型:“POST”,
url:“/”+pk,
异步:false
}).responseText;
}
}
返回ret;
}
那么,如何将javascript变量
url
作为site\u url
的参数值?您不能在JS文件中调用PHP。我建议您在head标记上创建一个全局JS变量,该变量将包含您需要的必要信息,并在JS文件中调用
您的代码应该大致如下所示
<html>
<head>
<script type="text/javascript">
var site_url_questionaire = <?php echo site_url('enquete/questionnaire'); ?>;
</script>
<script src="some_js_file.js" type="text/javascript">
</head>
</html>
变量站点url问卷=;
如果你需要澄清,请告诉我。谢谢 如果有外部JS文件,则必须像下面这样声明全局变量 例如:
<script type="text/javascript" src="<?php echo base_url('assets/customjs/custom.js')?>"></script>
<script>
var base_url = "<?php echo base_url();?>";
var current_url = "<?php echo current_url();?>";
</script>
您是否试图从JavaScript调用PHP函数?是的,事实上这是一个不可能的Codeigniter函数(PHP)。PHP在服务器上运行,只有这样JS才能用于客户端。将您的site\uURL
函数移植到JS,或者进行另一个AJAX调用以生成所需的值。实际上,您可以将Apache服务器设置为允许PHP解析任何(扩展名)文件。但我宁愿坚持建议的解决方案。谢谢你的意见。这对我们来说是一个额外的选择。