我将PHP var分配给我的javascript var并通过发送到PHP文件
ajax-jQuery,但是我的php变量包含换行符
我已替换为<br>
e.g. $values1 = 'abc<br>pqr<br>xyz'; $values2 = 'xyz<br>lmn';
javascript - var data = 'val1=<?php echo $values; ?>&val2=<?php echo $values2; ?>';
然后使用ajax脚本将数据发布到PHP文件
但是当我在控制台上打印这些数据时,它给了我错误 - SyntaxError:unterminated string literal。
有人可以帮忙吗?
答案 0 :(得分:2)
您的JS代码:
var data = 'val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>';
如果您的一个或多个PHP变量$values1
或$values2
中包含单引号'
,则会出现Javascript语法错误。
通过将所有单引号替换为其他内容,确保您的PHP变量中不包含单引号,否则使用双引号"
来创建JS var,如下所示:
var data = "val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>";
提供的PHP变量不包含双引号。
答案 1 :(得分:0)
首先,你有一个错字,可能会导致错误:
// --------------------------------v
var data = 'val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>';
然后,我建议您将对象用作Ajax请求的data
参数:
var data = {
val1: '<?php echo $values1; ?>',
val2: '<?php echo $values2; ?>'
};
最好在'
和$values1
变量中转义单引号$values2
。
答案 2 :(得分:-1)
尝试使用<br />
代替<br>
。只是在这里猜测,没有测试。