C# C将数据附加到聊天脚本中的DIV
我使用AJAX定时器在ASP.NET C中创建了一个聊天应用程序,由于定期更新updatepanel,我无法控制滚动条,也无法选择文本。现在,我想知道将从数据库接收到的数据附加到DIV的替代方法是什么。使用带有AJAX、jQuery或JavaScript的C如何将检索到的文本附加到DIV 我代码的一部分C# C将数据附加到聊天脚本中的DIV,c#,javascript,jquery,asp.net,ajax,C#,Javascript,Jquery,Asp.net,Ajax,我使用AJAX定时器在ASP.NET C中创建了一个聊天应用程序,由于定期更新updatepanel,我无法控制滚动条,也无法选择文本。现在,我想知道将从数据库接收到的数据附加到DIV的替代方法是什么。使用带有AJAX、jQuery或JavaScript的C如何将检索到的文本附加到DIV 我代码的一部分 如果您只需要纯文本,并且假设您的div的id为divChat,并且设置为runat=server,则可以执行以下操作: var sbChatData = new System.Text.Stri
如果您只需要纯文本,并且假设您的div的id为divChat,并且设置为runat=server,则可以执行以下操作:
var sbChatData = new System.Text.StringBuilder(1000);
while(dr.read())
{
sbChatData.AppendLine(dr[0].ToString());
}
divChat.InnerText += sbChatData.ToString();
更新
回传或使用更新面板的替代方法是使用ajax请求或静态页面方法来检索要在div中使用的值
下面是一个使用页面方法的快速示例:
1如果您还没有脚本管理器,请在页面中添加脚本管理器:
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" EnablePartialRendering="true" runat="server" />
3添加javascript以获取聊天数据并更新div:
<script language="javascript" type="text/javascript">
function UpdateChatData() {
var sChatData = PageMethods.GetChatData();
if (sChatData != null) {
document.getElementById('divChat').innerText = sChatData;
}
}
</script>
如果您只需要纯文本,并且假设您的div的id为divChat,并且设置为runat=server,则可以执行以下操作:
var sbChatData = new System.Text.StringBuilder(1000);
while(dr.read())
{
sbChatData.AppendLine(dr[0].ToString());
}
divChat.InnerText += sbChatData.ToString();
更新
回传或使用更新面板的替代方法是使用ajax请求或静态页面方法来检索要在div中使用的值
下面是一个使用页面方法的快速示例:
1如果您还没有脚本管理器,请在页面中添加脚本管理器:
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" EnablePartialRendering="true" runat="server" />
3添加javascript以获取聊天数据并更新div:
<script language="javascript" type="text/javascript">
function UpdateChatData() {
var sChatData = PageMethods.GetChatData();
if (sChatData != null) {
document.getElementById('divChat').innerText = sChatData;
}
}
</script>
这就是继续在旧值的基础上附加完整值。@Madcoder。如果每次都从数据库中读取所有值,则可以将divChat.InnerText+=更改为divChat.InnerText=但如果我在Timer_Tick中写入此项,则也会遇到相同的问题。如果我在页面加载中写入相同的内容,我每次都必须重新加载以更新值。对不起,您在计时器滴答声中遇到了什么问题?无法从DIV中选择文本。这是继续将完整值与旧值一起追加。@Madcoder。如果每次都从数据库中读取所有值,则可以将divChat.InnerText+=更改为divChat.InnerText=但如果我在Timer_Tick中写入此项,则也会遇到相同的问题。如果我在Page_Load中写入相同内容,则每次都必须重新加载以更新值。对不起,您在timer_tick中遇到了什么问题?无法从DIV中选择文本。