Pregunta

Si tengo un HTML helper así:

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

¿Cómo puedo solicitar una clase CSS a ella?¿Tengo que envolver en un lapso?O tengo que utilizar de alguna manera el HtmlAttributes propiedad de la ayuda?

¿Fue útil?

Solución

Puede pasar que en el cuadro de texto de llamada como un parámetro.

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

Esta línea va a crear un cuadro de texto con el valor 20 y asignar el atributo class con el valor de hola.Puse el carácter @ en frente de la clase, porque la clase es una palabra clave reservada.Si desea añadir otros atributos, acaba de separar los pares clave/valor con comas.

Otros consejos

Esto es cómo agregar una clase y un estilo en el mismo elemento...

"x" es el modelo pasa a la vista con una propiedad de TextBoxID

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

Me puse a investigar y encontré este artículo que parece tener una solución a su pregunta.

Ajax Control Toolkit con ASP.NET MVC#

fuente:jimzimmerman

ENLACE DEL ARTÍCULO

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

CITA

Así que, básicamente, si usted pone el nombre de la clase TextboxWatermark en cualquier cuadro de texto de entrada con el título te gustaría mostrar como la marca de agua como este:

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

o

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

Lo que es bueno acerca de la segunda opción es que usted obtenga el beneficio añadido de conseguir que el Motor de Vista de llenar el valor del cuadro de texto, si no hay un elemento de ViewData de la ViewData.Modelo que tiene un var nombre 'nombre de usuario'.

El uso de la htmlAttributes parámetro con un tipo anónimo, como tihs:

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

el helper de la aplicación

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));
    }    
}

el uso en la vista de sección

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

el resultado enter image description here

Theres ninguna necesidad de usar el span, porque no dinámico.

Css:

.testClass {
color: #1600d3;
}

Ver (Índice):

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

si usted necesita dinámica de opciones que se pueden utilizar, por ejemplo:

CSS:

.test class{
background: #ffffff;
}

Controlador (el Índice de la prueba):

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

Ver (Índice):

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

Espero que ayude.

Es mucho más trabajo?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top