【问题标题】:String manipulation to HTML list对 HTML 列表的字符串操作
【发布时间】:2016-10-27 16:56:09
【问题描述】:

我有这个string

var audit = "Id:1;Name:John;Address:|||Id:123;Street:123 Main St.;City:LA;State:|||Id:234;Name:California;Code:CA|||;ZipCode:12345|||;IsActive:true";

我如何把它变成:

<ul>
    <li>Id: 1<li>
    <li>Name: John<li>
    <li>
       Address: 
       <ul>
           <li>Id: 123<li>
           <li>Street: 123 Main St.<li>
           <li>City: LA<li>
           <li>
              State: 
              <ul>
                  <li>Id: 234<li>
                  <li>Name: California<li>
                  <li>Code: CA<li>
              </ul>
           <li>
           <li>ZipCode: 12345</li>
       </ul>
    <li>
    <li>IsActive: true<li>
</ul>

现在我正在使用ViewHelper,但它在处理||| 的东西时完全失败了:

@helper ChangedDisplay(string changed)
{
    if (string.IsNullOrEmpty(changed) || changed.Trim().ToLower() == "n/a")
    {
        @:n/a
    }
    else
    {
       var rows = changed.Split(';');

       <ul>
            @foreach (var row in rows)
            {
                var columns = row.Split(':');
                <li>
                    @(columns.First()): 
                    @if (columns.Last().Contains("|||"))
                    {
                        @ChangedDisplay(columns.Last().Trim('|'))
                    }
                    else
                    {
                        @columns.Last()
                    }
                </li>
            }
        </ul>
    }
}

感谢您的帮助。

【问题讨论】:

  • 您发布的html不一致,缺少邮政编码。不确定您要达到的目标。
  • 好的,ZipCode 部分已修复...你不知道我想要达到什么目的吗?我怎样才能让你更清楚?

标签: c# html asp.net-mvc string viewhelper


【解决方案1】:

像这样:

        audit = "Id:1;Name:John;Address:|||Id:123;Street:123 Main St.;City:LA;State:|||Id:234;Name:California;Code:CA|||;ZipCode:12345|||;IsActive:true";


        var auditHtml = "<ul><li>" + audit
            .Replace("|||;", "</li></ul><li>")
            .Replace(":|||", ":<ul><li>")
            .Replace(";", "</li><li>")
            + "</li></ul>"
        ;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    • 2013-10-23
    • 2020-12-13
    • 2019-03-25
    • 2011-10-01
    • 1970-01-01
    • 2017-06-30
    相关资源
    最近更新 更多