Как удалить HTML-теги из строки на странице просмотра C # - PullRequest
0 голосов
/ 27 октября 2018

Как убрать теги html из строки на странице списка в c # Я пробовал Regex.Replace(inputHTML, @"<[^>]+>|&nbsp;", "").Trim();, но это не работает на странице просмотра html, может быть, это только работа в контроллере.

Это мое действие:

public ActionResult Index()
        {
            string AuthRole = "1,2,3";
            ApplicationUser chkuser = common.CheckIsAuthorize(AuthRole);
            if (chkuser != null)
            {
                var data = db.Page.ToList();
                return View(data);
            }
            else
            {
                return RedirectToAction("Index", "Home");
            }
        }

Это мой взгляд:

foreach (var item in Model)
{
<tr>
    <td>@i</td>
    <td>@item.Title</td>
    <td>@item.Message</td>
    <td>
        @Html.ActionLink("Edit", "Edit", new { id = item.Id })
    </td>
</tr>
i++;
}

Мой список выглядит следующим образом:

enter image description here

Ответы [ 2 ]

0 голосов
/ 27 октября 2018

Если вы хотите показывать свой контент без какого-либо форматирования, вы можете использовать это Regex.Replace(input, "<.*?>", String.Empty), чтобы убрать все HTML-теги из вашей строки.

1) Добавьте приведенный ниже код в начало просмотра (.cshtml).

@using System.Text.RegularExpressions;

@helper StripHTML(string input)
{
    if (!string.IsNullOrEmpty(input))
    {
        input = Regex.Replace(input, "<.*?>", String.Empty);
        <span>@input</span>
    }
}

2) Используйте вышеуказанную вспомогательную функцию, например

<td>@StripHTML(item.Message)</td>
0 голосов
/ 27 октября 2018

Замените

<td>@item.Message</td>

на

<td>@Html.Raw(item.Message)</td>

, это может помочь вам отобразить HTML в виде бритвы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...