Стилизация помощников HTML ASP.NET MVC

Если у меня есть помощник HTML, например:

Name:<br />
<%=Html.TextBox("txtName",20) %><br />

Как мне применить к нему класс CSS? Надо ли оборачивать его в промежуток? Или мне нужно как-то использовать свойство HtmlAttributes помощника?

Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
24
0
54 645
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

Ответ принят как подходящий

Вы можете передать его в вызов TextBox в качестве параметра.

Name:<br/>    
<%= Html.TextBox("txtName", "20", new { @class = "hello" }) %>

Эта строка создаст текстовое поле со значением 20 и присвоит атрибуту класса значение hello. Я помещаю символ @ перед классом, потому что класс - это зарезервированное ключевое слово. Если вы хотите добавить другие атрибуты, просто разделите пары ключ / значение запятыми.

Используйте параметр htmlAttributes с анонимным типом, например:

<%=Html.TextBox("txtName","20", new { @class = "test"}) %>

Я провел небольшое исследование и наткнулся на эту статью, в которой, кажется, есть решение вашего вопроса.

Набор инструментов управления Ajax с ASP.NET MVC#

источник: jimzimmerman

СТАТЬЯ ССЫЛКА

http://www.ajaxprojects.com/ajax/tutorialdetails.php?itemid=330

ЦИТИРОВАТЬ

So basically if you put the class name TextboxWatermark on any textbox input with the title you like to show as the watermark like this:

<input type = "text" class"TextboxWatermark" name = "username" id = "username" title = "Must be at least 6 chars" />

or

<%= Html.TextBox("username", new { @class = "TextboxWatermark", @title = "Must be at least 6 chars" }) %>

What is nice about the second option is that you get the added benefit of getting the View Engine to fill out the value of the textbox if there is an item in ViewData of the ViewData.Model that has a var named 'username'.

Это намного больше работы?

Для разработчика нет, но для ГЛАЗА Дизайнера.

MRG 20.04.2010 11:28

Вот как добавить класс и стиль к одному и тому же элементу ...

"x" - это модель, переданная в представление со свойством TextBoxID.

@Html.TextBoxFor(x => x.TextBoxID, new { @class = "SearchBarSelect", style = "width: 20px; background-color: green;" })

Нет необходимости использовать span, потому что он не динамический.

CSS:

.testClass {
color: #1600d3;
}

Просмотр (индекс):

@Html.TextBox("expression", "Text to show.", new { @class = "testClass" })

если вам нужны динамические параметры, вы можете использовать, например:

CSS:

.test class{
background: #ffffff;
}

Контроллер (индекс для теста):

[HttpGet]
public ActionResult Index()
{
ViewBag.vbColor = "#000000";
return View();
}

Просмотр (индекс):

<div>
<span>
@Html.TextBox("expression", "Text to show.", new 
{ @class = "testClass", @style = "color: " + 
@ViewBag.vbColor })
</span>
</div>

Надеюсь, это поможет.

вспомогательная реализация

public static class LabelExtensioncs
{
    public static MvcHtmlString Alarm(this HtmlHelper helper, string target, string text)
    {
        return MvcHtmlString.Create(string.Format("<p class='alert' style='background-color: #b8f89d;border-radius: 5px;width: 100%;'><b>{0}</b><br /><i>{1}</i></p>", target, text));
    }    
}

использование в разделе просмотра

@Html.Alarm("Title", "please unsure your card no is invisible in your authorized information")

результат

Другие вопросы по теме