使用jquery自动刷新div的内容
我有一个div,它执行数据库查询并用内容填充div 我希望能够每x秒刷新一次div,以便它显示任何新内容使用jquery自动刷新div的内容,jquery,html,json,coldfusion,cfquery,Jquery,Html,Json,Coldfusion,Cfquery,我有一个div,它执行数据库查询并用内容填充div 我希望能够每x秒刷新一次div,以便它显示任何新内容 <div id="chatText" class="chatText"> <cfquery name="GetChatConversation" datasource="#request.FlintHost#" dbtype="ODBC"> SELECT * FROM tbl_ChatConversation WHERE
<div id="chatText" class="chatText">
<cfquery name="GetChatConversation" datasource="#request.FlintHost#" dbtype="ODBC">
SELECT *
FROM tbl_ChatConversation
WHERE int_ChatID = #url.int_ChatID#
</cfquery>
<cfoutput query="GetChatConversation">
#str_Name# :#str_Content#<br />
</cfoutput>
</div>
我有以下代码刷新div,但将整个页面插入div,而不是仅仅刷新内容
<script type="text/javascript">
setInterval("my_function();",5000);
function my_function()
{
$('#chatText').load('');
}
</script>
你有什么办法让它工作吗
谢谢
Paul我会将您希望显示在div中的代码放在一个单独的文件中,具体操作方法由您决定。我已经在这个测试中使用了PHP,它确实有效 然后,对于您的页面和javascript:
<div id="chatText" class="chatText"></div>
<script type="text/javascript">
setInterval("my_function();",5000);
function my_function() {
$('#chatText').load('link to the external file');
}
</script>
这刚刚刷新了我的DIV。另一种方法是可以使用一些ajax方法,但是上面的方法应该可以工作。您必须有两个单独的文件。包含聊天的文件和生成聊天内容的文件。然后,您可以通过首次加载聊天或使用setTimeout函数以递归方式重新加载数据来加载内容,以每5000ms刷新一次文件 这是一种既快又脏的方法。我建议您使用JSON获取数据,并使用更好的方式显示数据,如使用datatables File1.cfm
<div id="chat">
</div>
<script>
var loadChat = function(){
$("#chat").load(file2.cfm);
}
var refreshChat = function(){
setTimeout(function(){
loadChat();
refreshChat();
,5000);
}
$(document).on('ready',function(){
loadChat();
refreshChat();
});
</script>
文件2有你的内容
file2.cfm
<cfquery name="GetChatConversation" datasource="#request.FlintHost#" dbtype="ODBC">
SELECT *
FROM tbl_ChatConversation
WHERE int_ChatID = #url.int_ChatID#
</cfquery>
<cfoutput query="GetChatConversation">
#str_Name# :#str_Content#<br />
</cfoutput>
socket.io。看看第一句话中提到的代码必须包含查询。不再需要递归setTimeout调用。
<cfquery name="GetChatConversation" datasource="#request.FlintHost#" dbtype="ODBC">
SELECT *
FROM tbl_ChatConversation
WHERE int_ChatID = #url.int_ChatID#
</cfquery>
<cfoutput query="GetChatConversation">
#str_Name# :#str_Content#<br />
</cfoutput>