[英]passing PHP string to JavaScript: unterminated string literal
i am assigning PHP var to my javascript var and sending to PHP file through ajax-jQuery, but my php variable contains newline chars which i have replaced with <br>
我正在将PHP var分配给我的javascript var并通过ajax-jQuery发送到PHP文件,但我的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; ?>';
and then ajax script to post data to PHP file 然后ajax脚本将数据发布到PHP文件
but when i print this data on console it is giving me error- SyntaxError: unterminated string literal. 但是当我在控制台上打印这个数据时它给了我错误 - SyntaxError:unterminated string literal。
Can anyone help ? 有人可以帮忙吗?
Your JS code: 你的JS代码:
var data = 'val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>';
Will give Javascript syntax error if one or more of your PHP variables $values1
OR $values2
contain single quote '
in them. 会给JavaScript语法错误,如果一个或多个你的PHP变量
$values1
或$values2
包含单引号'
在其中。
Make sure your PHP variable don't contain single quotes in them by replacing all single quotes to something else otherwise use double quotes "
to create JS var like this: 通过将所有单引号替换为其他内容,确保您的PHP变量中不包含单引号,否则使用双引号
"
创建JS var,如下所示:
var data = "val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>";
Provided PHP variables don't contain double quotes. 提供的PHP变量不包含双引号。
First of all, you have a typo, that might cause an error: 首先,你有一个错字,可能会导致错误:
// --------------------------------v
var data = 'val1=<?php echo $values1; ?>&val2=<?php echo $values2; ?>';
Then, I suggest you to use object as data
parameter for Ajax request: 然后,我建议你使用object作为Ajax请求的
data
参数:
var data = {
val1: '<?php echo $values1; ?>',
val2: '<?php echo $values2; ?>'
};
Also it is better to escape single quotes '
in both $values1
and $values2
variables. 此外,它是更好地逃避单引号
'
两个$values1
和$values2
变量。
Try using <br />
instead of <br>
. 尝试使用
<br />
而不是<br>
。 Just guessing here, no testing. 只是在这里猜测,没有测试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.