我正在开发A.I正在推送MySQL数据库上的文本的项目。然后,我们想要在网页上显示正在进行的写作。我们还在努力。
我们正在获取数据并定期检查数据库是否有新条目。问题是,我们希望将每个文本与空格分开并尝试使用<br/>
或<p>
,但它不起作用,它似乎只是&#34;只是&#34;文字并显示如下。
我们的代码:
<head>
<script type = "text/javascript" src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<style type="text/css">
#myTable{
width:"90%";
min-width: 250px;
word-wrap:break-word;
overflow:visible;
position:absolute;
border:solid 0px;
top:250px;
left:720px;
right:720px;
bottom:50px;
font-family:"Times New Roman", Times, serif;
text-align:justify
}
</style>
</head>
<body>
<div id="myTable"> <div>
<script type="text/javascript">
var skip = 0;
function get_data(index) {
$.ajax({
url : 'getData.php',
type : 'POST',
data: ({"skip":skip}),
success : function(data) {
if(data && data.trim()!='') {
skip = skip+1;
showText("#myTable", data, 0, 5);
}
else {
setTimeout(function () { get_data(skip); }, 30000);
}
},
error : function(request,error)
{
alert("Request error : "+JSON.stringify(request));
}
});
}
function showText(target, message, index, interval) {
if (index < message.length) {
$(target).append(message[index++]);
setTimeout(function () { showText(target, message, index, interval); }, interval);
}
else {
get_data(skip);
}
}
//var period = 10000; //NOTE: period is passed in milliseconds
get_data(skip);
//setInterval(page_refresh, period);
</script>
</body>
答案 0 :(得分:1)
在SQL中,如果您联系CHAR(13)
任何字符串,它将为您提供换行符。
DECLARE @textBreaking NVARCHAR(50)
SET @textBreaking = 'FIRST LINE.' + CHAR(13) + 'FIRST LINE.'
SELECT @textBreaking
选择此块将返回以下内容:
第一行。
第二行。
从SQL获取文本并在网页上显示它应该达到你想要的效果。
答案 1 :(得分:0)
您应该尝试在元素标记<div>
,<p>
或其他内容中附加消息,
$(target).append('<p>' +message[index++]+ '</p>');
然后为该标记设置带有边距或填充的样式以分隔每条消息。
p {
margin-bottom:15px;
margin-top:15px;
//or
padding-bottom:15px;
padding-top:15px;
}
答案 2 :(得分:-1)
分析您的http://xx.xxx.xx.xxx/getData.php
节目中没有<br />
个标签,但\n
代替您的输出。
在您的JS代码中,您需要将\n
替换为<br />
。#
我认为message[index++]
包含您的文字,所以:
$(target).append(message[index++].replace("\n", "<br />");