【问题标题】:Display text exactly in content editable div tag在内容可编辑的 div 标签中准确显示文本
【发布时间】:2015-08-22 11:52:28
【问题描述】:

我有一个类似的 XML

<XYZ>front0 

and</XYZ>

当我在 xml 中保存文本时,它保存的内容与我键入的内容完全相同。但是当我从 XML 中获取时,它会显示在一行中。 问题是什么??有什么建议吗

更新

XmlDocument xd = new XmlDocument();
string LastModifiedByTrans = "";
string date = "";
string LastModifiedByQaed = "";
string QAed_date = "";

try
{
    foreach (var g in gp)
    {
        p.text = g.Text_xml.ToString();

        // LOAD TEXT XML
        xd.LoadXml(p.text);
        XmlNodeList txt = xd.GetElementsByTagName("Texts");
        for (int i = 0; i < txt.Count; i++)
        {
            XmlNode nd = txt.Item(i);
            if (nd.HasChildNodes)
            {
                XmlNodeList cnd = nd.ChildNodes;
                    foreach (XmlNode n in cnd)
                    {
                           cont = n.ChildNodes[0].InnerText;

..

通过 innerText 我获取 XML 值.. 就好像是 n.ChildNodes[0].InnerText; "front0 and \r\n\r\nsaid can " string 但是当我在 div 标签中显示它时,它显示为单行

更新

public List<Room> getText(decimal Trans_ID, decimal Job_ID, string GroupName, string path)
{
    GroupData p = new GroupData();
    Room newroom = new Room();
    var room = new List<Room>();
    XmlDocument xd = new XmlDocument();
    string LastModifiedByTrans = "";
    string date = "";
    string LastModifiedByQaed = "";
    string QAed_date = "";

    try
    {
        var gp = (from Trans_Mast in r2ge.Transcription_Master where Trans_Mast.Transcription_Id == Trans_ID && Trans_Mast.Entity_Id == Job_ID select Trans_Mast).Distinct();

        foreach (var g in gp)
        {
            p.text = g.Text_xml.ToString();

            // LOAD TEXT XML
            xd.LoadXml(p.text);
            XmlNodeList txt = xd.GetElementsByTagName("Texts");
            for (int i = 0; i < txt.Count; i++)
            {
                XmlNode nd = txt.Item(i);
                if (nd.HasChildNodes)
                {
                    XmlNodeList cnd = nd.ChildNodes;
                    if (role == "Transcriber")
                    {
                        foreach (XmlNode n in cnd)
                        {
                            if (GroupName == n.Attributes["group"].Value && n.Attributes["audio"].Value.Equals(path) && n.Attributes["role"].Value.Equals("QA"))
                            {
                                LastModifiedByQaed = n.Attributes["user"].Value;
                                if (((n.Attributes["datetime"]).Value).Length > 0)
                                {
                                    QAed_date = Convert.ToDateTime(n.Attributes["datetime"].Value).ToString("yyyy/MM/dd HH:mm:ss");
                                }
                                else
                                    QAed_date = "";
                            }
                        }
                        foreach (XmlNode n in cnd)
                        {
                            if (GroupName == n.Attributes["group"].Value && n.Attributes["audio"].Value.Equals(path))
                            {
                                string cont = "";
                                string contnt = "";
                                if ((n.ChildNodes).Count > 0)
                                {
                                    cont = n.ChildNodes[0].InnerText;
                                    contnt = cont.Replace(System.Environment.NewLine, "<br/>");
                                }
                                else
                                    cont = "blank";
                                if (((n.Attributes["datetime"]).Value).Length > 0)
                                {
                                    date = Convert.ToDateTime(n.Attributes["datetime"].Value).ToString("yyyy/MM/dd HH:mm:ss");
                                }
                                else
                                    date = "";


                                Text text = new Text()
                                {
                                    Content = cont,
                                    LastModifiedOn = date,
                                    LastModifiedBy = n.Attributes["user"].Value,
                                    LastModifiedBy_Qaed = LastModifiedByQaed,
                                    LastModifiedOn_Qaed = QAed_date

                                };
                                newroom.text.Add(text);
                            }
                        }
                    }                    
                }
            }
        }
    }
    catch (Exception ex)
    {
        Console.Write("In fetch text data err", ex.Message);
        throw ex;
    }
    room.Add(newroom);
    return room;
}

【问题讨论】:

  • 对不起,我没有指定..在 c# mvc @kupendra 中工作
  • 然后查看Question
  • @kupendra 你错了。问题根本不在于换行。
  • @debin 您如何编写 XML 和读取 XML?能否请您提供代码示例?

标签: javascript c# xml


【解决方案1】:

您如何阅读您的 XML? “获取 XML”是什么意思?
C# 中有很多方法可以读取文件的 XML 内容。
请提供用于获取 XML 文件的代码 sn-p。

这是我的代码 sn-p,它从字符串加载 XML 数据(这是正确的,因为假设您的文件 正在正确写入)。它正确地将多行 XML 元素读取到字符串中。

更新:哦,现在我明白了。我在学习 PHP 时遇到了同样的问题。这完全让我发疯。
然后,我找到了答案:文本实际上显示正确。但是,HTML 不输出换行符

意思是:
你有 XML:

<value>Hi
I am a multiline
value</value>

它被正确地读取到一个字符串并像这样输出到一个 HTML:

<div>
  Hi
  I am a multiline
  value
</div>

但是,在浏览器中,您会看到一行。 这是一个 JSFiddle:http://jsfiddle.net/s9d36a8n/
您可以通过查看源代码来确定我是否正确(在大多数浏览器中为 Ctrl + U)。

如果希望数据分多行显示,则需要在每一行的末尾放置 HTML 换行符&lt;br/&gt;,如下所示:

<div>
  Hi<br/>
  I am a multline<br/>
  value
</div>

你可以通过执行来实现这一点

htmlWithBrs = cont.Replace(Environment.NewLine, "<br/>");

你会得到这样的东西:http://jsfiddle.net/5vtk8ovk/

【讨论】:

  • 但在我的情况下它并没有按原样显示..它在单行中显示
  • 感谢您的回复,但添加这些行后出现错误cont = n.ChildNodes[0].InnerText; cont = cont.Replace(Environment.NewLine, "&lt;br/&gt;");
  • 它显示Exception Details: System.ComponentModel.Win32Exception: The handle is invalid Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
  • @debin 这个cont 怎么样?能否请您发布整个控制器或操作代码?
  • 请查看我的更新问题
猜你喜欢
  • 2014-02-14
  • 1970-01-01
  • 2016-07-05
  • 1970-01-01
  • 2011-02-24
  • 1970-01-01
  • 1970-01-01
  • 2014-01-14
相关资源
最近更新 更多