qq()
является эквивалентом ""
, но с соответствующими разделителями. Он будет вашим другом, если вы выводите HTML или JavaScript.
print qq(<script type="text/javascript">alert("The world is my oyster");</script>);
Обратите внимание, что вам не нужно использовать ()
в качестве разделителей, см. perlop .
Если вы выводите JavaScript, который строит HTML, вы должны использовать jQuery или Ext . Но в любом случае вы окажетесь в аду с несколькими уровнями спасения. JSON :: XS может сделать вашу жизнь менее болезненной. Также узнайте о здесь-документах :
my $js = <<'JS';
alert( 'The world is my oyster' );
var $href = "example.html";
document.write( '<a href="' + $href + '">clicky</a>' );
JS
print qq(<script type="text/javascript">$js</script>);
Хитрость в вышесказанном заключается в том, что $href
является переменной JavaScript, а не переменной Perl. (Да, идентификаторы JS могут включать $
.)