我需要在js警报中回显多行错误,我正在使用下面的代码
工作代码
$str = "This is a error1\\n";
$alert = $str."This is error2";
if(!empty($alert)){
?>
<script type="text/javascript">
alert('<?php echo $alert;?>');
</script>
<?php
}
但是我需要处理一个旧的编写代码,所以这个在echo警告之前有addlashes函数,如下面的
$str = "This is a error1\\n";
$alert = $str."This is error2";
$alert = addslashes($alert);
if(!empty($alert)){
?>
<script type="text/javascript">
alert('<?php echo $alert;?>');
</script>
<?php
}
输出:这是一个错误1 \ n这是错误2
我需要这个以两行打印我只尝试过\ n但是它不起作用
请帮帮我
答案 0 :(得分:0)
我会让javascript做得很辛苦。
<script type="text/javascript">
var alertArr = ["<?php echo $string1; ?>", "<?php echo $string2; ?>"];
alert(alertArr.join("\n"));
</script>
https://jsfiddle.net/0uwmmm3n/ (顺便说一句,随意的网址)
编辑:不那么凌乱的版本,也许更合法
<?php $alertArr = [$string1, $string2]; ?>
<script type="text/javascript">
var alertArr = <?php echo json_encode($alertArr); ?>;
alert(alertArr.join("\n"));
</script>
重新编辑:不,对于这么简单的工作而言,工作太多,两次转换太多了
答案 1 :(得分:0)
$str = "This is a error1\\n";
$alert = $str."This is error2";
$alert = addslashes($alert);
if(!empty($alert)){
?>
<script type="text/javascript">
alert('<?php echo $alert;?>');
</script>
<?php
}
我已经使用过此代码,并且可以根据您的需要正常运行
如果问题仍然存在,请清除缓存