PHP代码"<?js格式
php code "<?=" in js format
此JavaScript代码位于PHP文件中,我需要将此JS代码放入.js
文件中。
<script>
$j(".fresh").click(function(){
$j(this).html('<span><?php echo $this->lang_arr['my_new_func']; ?></span>');
$j.post( "<?= site_url('website/func_resh') ?>",
{ id : "<?= $webfun_one_arr[id] ?>",
website_id : "<?= $web_one_arr[id] ?>"
}
);
})
</script>
我知道这个代码<?php echo $this->lang_arr['my_new_func']; ?>
在JavaScript格式是{$this->lang_arr['my_new_func'];}
但我不知道如何将<?= site_url('website/func_resh') ?>
和<?= $webfun_one_arr[id] ?>
转换为JS格式。
谢谢你的回答
插入PHP和JavaScript是一个巨大的蠕虫罐头,你应该避免打开。在我看来,处理这个问题的最佳方法是使用PHP输出一个JSON对象,它具有内置支持,然后在JavaScript中使用该对象。这样,您只需要在<script>
标记中放入一小段PHP代码,而不必尝试让服务器将.js
文件解析为PHP。像这样:
在你的PHP中:
<?php $my_vals = array(
'myNewFunc' => $this->lang_arr['my_new_func'],
'postUrl' => site_url('website/func_resh'),
'postId' => $webfun_one_arr['id'],
'postWebsiteId' => $web_one_arr['id']
);
?>
<script>
$j.getScript('/path/to/your_script.js', function() {
myFunc(<%= json_encode($my_vals); %>); // turns your PHP array into a
}); // JavaScript object automatically
</script>
Then,在your_script.js
中:
// Look, Ma, no PHP!
function myFunc(someJson) {
$j(".fresh").click(function(){
$j(this).html('<span>' + someJson.myNewFunc + '</span>');
$j.post( someJson.postUrl,
{ id : someJson.postId,
website_id : someJson.postWebsiteId
}
);
});
}
不要。将其设置为返回text/javascript
内容类型的.js.php
文件,并包含其他相关的PHP脚本。
相关文章:
- Datetime格式为Friendly Time.Moment JS输出错误
- d3pie.js格式的值显示
- 如何让应用程序帮助程序方法在发送的请求为 JS 格式时工作
- Moment.js格式差异
- 为什么我的rails应用程序在生产环境中没有正确响应.js格式
- 以角度 js 格式排序日期
- 将格式为 dd-MMM-YYYY 的日期转换为日期或 JS 格式的 dd/mm/yyyy 格式
- 是否可以上传文本文件以 HTML/JS 格式输入
- 指定日期和转换为 js 格式的日期格式之间的毫秒数
- 将 twitter-cldr-js 格式的数字解析回整数或浮点数
- 以 js 格式显示 php 数组
- jQuery Masonry.js格式不正确;问题出在哪里
- 为什么我不能在同一个js文件中建立两个clev .js格式的字段?
- FullCalendar不能找出正确的moment.js格式
- React:以JS格式显示对象
- 字符串.JS格式
- Rails form_tag未知格式错误与js格式remote: true相同
- 我如何在js格式渲染index.js.erb ?(ruby 1.8.7)
- Moment js格式日期与时区
- moment.js格式datetime中的错误'使用.calenda()方法时无法工作