javascript中的转义撇号显示额外的反斜杠
我使用Codeigniter的语言文件来显示任何类型的消息,例如:javascript中的转义撇号显示额外的反斜杠,javascript,codeigniter,escaping,Javascript,Codeigniter,Escaping,我使用Codeigniter的语言文件来显示任何类型的消息,例如: $lang['home']['msg1'] = "We couldn\'t proceed..."; 我使用以下代码在Javascript(在我的页脚中)中调用这些变量: var Settings = { base_url: '<?php echo base_url(); ?>', hire_text: '<?php echo $this->lang->line('hire');
$lang['home']['msg1'] = "We couldn\'t proceed...";
我使用以下代码在Javascript(在我的页脚中)中调用这些变量:
var Settings = {
base_url: '<?php echo base_url(); ?>',
hire_text: '<?php echo $this->lang->line('hire'); ?>',
msg1: '<?php echo $this->lang->line('home')['msg1']; ?>'
}
显示:
We couldn\'t proceed...
及
返回Javascript错误消息
在阅读了多个问题/帖子后,我仍然无法找到正确的方法您正在使用单引号打破这两个表达式(JS和PHP),而没有转义。可以在引号内转义,也可以使用单引号和双引号的组合
var Settings = {
base_url: "<?php echo base_url(); ?>",
hire_text: "<?php echo $this->lang->line('hire'); ?>",
msg1: '<?php echo $this->lang->line(\'home\')[\'msg1\']; ?>'// should be working either way
}
var设置={
基本url:“”,
出租人文本:“,
msg1:“”//应该以任何方式工作
}
只是为了笑一下当你这样做时会发生什么…=“我们无法继续…”;Javascrip错误,因为我的源代码将变成var Settings={msg1:“我们无法继续…”,
}只是为了好玩,请尝试$lang['home']['msg1']='wecan\\\'t procedure代码>页面中仍会显示一个反斜杠和您的建议。如果我将您的建议与双引号一起使用,则会得到JavaScript中值的JS SyntaxErrorUse双引号。通过在JS字符串和PHP数组键之间混合单引号,您打破了这里的一切。例如,hire\u文本:“
等。
$lang['home']['msg1'] = "We couldn't proceed...";
var Settings = {
base_url: "<?php echo base_url(); ?>",
hire_text: "<?php echo $this->lang->line('hire'); ?>",
msg1: '<?php echo $this->lang->line(\'home\')[\'msg1\']; ?>'// should be working either way
}