【问题标题】:using row separator, column separator,split function,etc in javascript to show chat messages one below another在 javascript 中使用行分隔符、列分隔符、拆分函数等来显示聊天消息
【发布时间】:2013-12-22 07:03:39
【问题描述】:

使用 Ajax 后,我收到一些由 web 服务以字符串形式返回的聊天消息。 现在我想将这些消息一个接一个地打印出来。我如何在这里使用列分隔符(~)和行分隔符(@#)。 这就是所有返回的消息都显示在一行中的方式

User1 says :~Hello to this world and enjoy this week~sent at 05:40:30 AM@#User2 says :~Hello to my world~sent at 05:41:35 AM

此处需要进行一些更改以将消息置于另一个之下

<script type="text/javascript">
    function OnSuccess(data) {
       if (data.d)
       {
          div1.innerText = data.d;
       }
           }
  </script>

我希望这两条消息看起来像这样

【问题讨论】:

  • 您指的是从发送到接收的消息分离吗?
  • 我收到了消息,但它是在一个字符串中,现在我想像图像一样显示它
  • 最简单的方法是按行分隔符 (@#) 拆分整个字符串并存储在数组中,然后对于数组中的每个值,按列分隔符 (~) 拆分它们和将它们放在具有row =&gt; column 值对的关联数组中,以便最后一步很容易解析此关联数组并将相应的内容放置在相应的位置。我建议您在此聊天窗口中使用表格,因为它很容易放置您的文本

标签: c# javascript asp.net ajax scripting


【解决方案1】:

看起来您必须解析这些字符串,但是如果不知道解析机制,您可以使用正则表达式。

【讨论】:

  • 我可以使用javascript创建一个div并显示它吗
  • 是的,你可以......在你解析它之后,然后动态添加一个div并将文本嵌入到它
【解决方案2】:
var rows = data.d.split('@#');
for (var i in rows) {
  // Break the row into lines
  rows[i] = rows[i].split('~');
}

rows 变量现在是一个行/行矩阵,您可以随意使用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多