Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C将数据附加到聊天脚本中的DIV_C#_Javascript_Jquery_Asp.net_Ajax - Fatal编程技术网

C# 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

我使用AJAX定时器在ASP.NET C中创建了一个聊天应用程序,由于定期更新updatepanel,我无法控制滚动条,也无法选择文本。现在,我想知道将从数据库接收到的数据附加到DIV的替代方法是什么。使用带有AJAX、jQuery或JavaScript的C如何将检索到的文本附加到DIV

我代码的一部分


如果您只需要纯文本,并且假设您的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中选择文本。