В чем разница между (new {htmlAtributes = new {}) и (new {}) - PullRequest
2 голосов
/ 01 мая 2019

Я знаю, что это анонимные типы, но я не понимаю синтаксис Razor.В какой-то документации я нашел такой пример:

@Html.Label("Hello", new { htmlAtributes = new { id = "hi" }})

В большинстве случаев я просто использую это просто: @Html.Label("Hello", new { id = "hi" })

Помогите мне понять это, иЯ не знаю, почему мой document.getElementById('hi').innerHTML = "changed"; не работает с первым.

1 Ответ

2 голосов
/ 01 мая 2019

Первый способ использования для Html.LabelFor

@Html.LabelFor(c=>c.Email, new { htmlAtributes = new { id = "hi" } })

Если вы используете @Html.Label("Hello", new { htmlAtributes = new { id = "hi" }})

он сгенерирует в (с htmlatributes это атрибут тега label)

<label for="Hello" htmlatributes="{ id = hi }">Hello</label>

Вам нужно использовать второй способ

@Html.Label("Hello", new { id = "hi" })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...