studio - El cuadro de texto que utiliza la contraseña de modo de texto no muestra el texto asp.net c#
textbox password vb net (7)
¿Qué tan desesperado estás?
Si no está lo suficientemente desesperado como para intentar algo, cualquier cosa para que funcione, no siga leyendo. Esto no será bueno. ¿OKAY? DE ACUERDO.
El truco es hacer que la aplicación web piense que no es un cuadro de contraseña. En otras palabras, no use TextMode="password"
.
Luego, en Page_Load
, ponga txt_punch.Attributes["type"] = "password"
Eso es. El navegador sabrá que es un campo de contraseña (y mostrará asteriscos o puntos), pero el servidor no lo sabrá, por lo que enviará el contenido al cliente como si fuera texto sin formato. Por supuesto, esto también pondrá la contraseña en la fuente de la página ...
Tengo unos pocos botones en un formulario web, y cuando el usuario haga clic en ellos actualizará el cuadro de texto. Esto funcionó hasta que agregué el textmode = contraseña. Ahora el cuadro de texto ya no muestra el texto. Depuré la aplicación y la propiedad de texto está obteniendo el valor, pero una vez más no se muestra.
Esto es lo que he intentado:
protected void btn_punch_7_Click(object sender, EventArgs e)
{
const string string_punch_Number_7 = "7";
var text = txt_punch.Text;
text += string_punch_Number_7;
txt_punch.Text = text;
}
protected void btn_punch_8_Click(object sender, EventArgs e)
{
const string string_punch_Number_8 = "8";
var text = txt_punch.Text;
text += string_punch_Number_8;
txt_punch.Text = text;
}
También me he cansado de esto:
public partial class WebForm3 : System.Web.UI.Page
{
public string string_punch;
protected void Page_Load(object sender, EventArgs e)
{
MultiView1.SetActiveView(View1);
txt_punch.Width = 300;
txt_punch.Height = 50;
txt_punch.MaxLength = 4;
txt_punch.Attributes.Add("OnChange", string_punch);
}
protected void btn_punch_7_Click(object sender, EventArgs e)
{
const string string_punch_Number_7 = "7";
string_punch = txt_punch.Text;
string_punch += string_punch_Number_7;
txt_punch.Text = string_punch;
}
protected void btn_punch_8_Click(object sender, EventArgs e)
{
const string string_punch_Number_8 = "8";
string_punch = txt_punch.Text;
string_punch += string_punch_Number_8;
txt_punch.Text = string_punch;
}
Basado en la opción una de las respuestas de Kola, puedes probar esto:
TextBox.Attributes["value"] = "Whatever value goes here";
Cuando configura la propiedad del cuadro de texto en TextMode = "Contraseña" , en el modo de edición, el cuadro de texto se muestra en blanco . Si rellenas un valor como
TextBox.Text = "Password";
luego no funciona y debe ingresar la contraseña nuevamente para guardar el formulario. Puede usar los atributos para completar el valor en el cuadro de texto como el código de abajo.
TextBox.Attributes["value"] = "your password value";
Cuando establece la propiedad TextMode de un TextBox en Contraseña, el comportamiento predeterminado es que no muestre el valor de la propiedad Text.
Esto es para evitar que las contraseñas sin máscara se muestren en la fuente HTML de la página.
Una solución es usar un atributo para mantener el valor de la contraseña:
TextBox.Attributes.Add("value", "yourPassword");
Este es un error de asp.net !! El algoritmo de validación de correo electrónico es muy estricto, lo que resulta en la exclusión de algunos correos electrónicos válidos. Si cambia el modo de texto de "Contraseña" tp "SingleLine", su código funcionará.
La contraseña generalmente no está diseñada para MOSTRAR, pero si está previsto que lo haga, esta página le puede ayudar Solution
No podemos asignar valores directamente al cuadro de texto de contraseña. Para asignar valores a la contraseña del cuadro de texto, deberíamos usar los atributos del cuadro de texto
Textbox1.Attributes.Add("value",variable/"string");