我正在编写一个阅读通知/消息的网页,要求我将通知作为数据库的输入 . 我正在使用php进行输入并使用echo将其传递给javascript函数 .
现在的问题是,如果通知非常大(> 1000个字符或其他东西),该功能将停止工作 . 有没有办法在javascript变量中存储大字符串?
提前谢谢你 .
javascript函数是这样的:
function display(subject, notice, from,to)
{
alert(notice);
document.getElementById('reader_default').innerHTML='';
document.getElementById('subject').innerHTML="SUBJECT : "+subject;
document.getElementById('from').innerHTML="From: "+from;
document.getElementById('to').innerHTML="To: "+to;
document.getElementById('noticedisp').innerHTML=""+notice;
}
php变量传递如下:
echo '<a href="javascript:void(0)" onclick="display(\''.ucfirst($subject).'\',\''.$notice.'\',\''.ucfirst($hostel).' Hostel'.'\',\''.$toid.'\')" style="padding:2%; text-decoration:none; color:#0033CC;">'.ucfirst($subject).'</a>'.'
<span style="padding:2%;"><i>From: </i>'.ucfirst($hostel).'Hostel</span>
'.'
';
首先我提供了以下字符串:
Lorem ipsum dolor sit amet,consectetur adipiscing elit . Ut molestie luctus lectus,nec volutpat ipsum porta sit amet . Phasellus ut egestas sapien . Curabitur mauris erat,eleifend quis adipiscing sollicitudin,posuere tempor ante . Lorem ipsum dolor坐下来,精致的adipistur elit . Ut ut erat nibh . Maecenas malesuada lacus pulvinar risus placerat convallis . 在elit aliquam mollis a eu nisi的Cras vitae urna . Nulla id molestie ante . Aenean faucibus interdum nibh,在tristique dui viverra eu . Nulla facilisi . 在placerat augue整数 . Sed quis risus dolor,在tristique est.Maecenas non tellus vel quam blandit elementum . Sed vestibulum dolor non mi eleifend luctus . Proin interdum mollis congue . Fusce quis consequat augue . 整数dictum lectus在volutpat odio tincidunt的ligula egestas . Sed placerat dictum velit quis dapibus . Cras non quam ut neque auctor hendrerit . Phasellus tincidunt dapibus metus,id rutrum purus fringilla vel . Pellentesque ac sapien elit . Maecenas nibh justo,lobortis id volutpat a,bibendum egestas enim . Vivamus坐在amet justo vel tortor ullamcorper molestie ac sed nibh . Donec adipiscing dui sed odio hendrerit quis aliquet turpis posuere . Donec pharetra mi ut odio luctus sodales . Donec elit nisi,cursus elementum cursus at,scelerisque quis ante . Nunc vel ipsum ut nibh dictum tempus ut ut tortor . Donec dignissim pharetra scelerisque . Curabitur pellentesque urna在lacinia leo euismod的velit ultricies . Nulla id dolor ut odio ultrices accumsan in id erat . Aliquam lorem turpis,tristique nec tincidunt id,lacinia sit amet ante .
如果在尝试所有内容后这不起作用,我将字符串缩短为:
Lorem ipsum dolor sit amet,consectetur adipiscing elit . Ut molestie luctus lectus,nec volutpat ipsum porta sit amet . Phasellus ut egestas sapien . Curabitur mauris erat,eleifend quis adipiscing sollicitudin,posuere tempor ante . Lorem ipsum dolor坐下来,精致的adipistur elit . Ut ut erat nibh . Maecenas malesuada lacus pulvinar risus placerat convallis . 在elit aliquam mollis a eu nisi的Cras vitae urna . Nulla id molestie ante . Aenean faucibus interdum nibh,在tristique dui viverra eu . Nulla facilisi . 在placerat augue整数 .
这个工作!!
2 回答
如果javascript将其解析为字符串,它将在换行符中断开 . 而不是[ENTER]你应该尝试使用\ n \ [ENTER] ..
您的数据可能包含单引号或双引号 . 我会在
htmlspecialchars
中回收你所回应的内容,这样这些以及任何其他有问题的HTML字符都不会破坏你的输出 .http://php.net/manual/en/function.htmlspecialchars.php