Elitmiar
Elitmiar

Reputation: 36839

Can't add new lines in JavaScript alert Box?

I'm generating a string in PHP and then eventually passing this string into a JavaScript alert box, my problem is I actually can't add line breaks in my alert box.

My code looks as follows

$str = "This is a string\n";
$alert = $str."This is the second line"; 

    if(!empty($alert)){
        ?>
            <script type="text/javascript">
            $(document).ready(function() {
                alert('<?=$alert?>');
            });
        </script>
    <?php
}

I'm getting the error:

Undeterminnated string literal

If I remove the \n from the string it works 100% but without line breaks.

Upvotes: 1

Views: 8900

Answers (2)

Matt Ellen
Matt Ellen

Reputation: 11592

You need to change $str to

$str = "This is a string\\n";

so that the \n gets passed to the JavaScript.

Upvotes: 4

Pekka
Pekka

Reputation: 449485

This happens because PHP interprets the \n before JavaScript has the chance to, resulting in a real line break inside the Javascript code. Try

\\n

Upvotes: 19

Related Questions