texto para formularios formulario ejemplos ejemplo cuadro contraseña cajas boton atributos c# html asp.net login code-behind

c# - formularios - No puede funcionar con el cuadro de texto html para iniciar sesión



input html atributos (5)

Debido a que estoy usando los botones html y el cuadro de texto para iniciar sesión, debo hacer el código en javascript en el código fuente para poder seguir el código. Si inicio sesión utilizando el nombre de usuario y la contraseña correctos que son Admin y 123 y hago clic en el botón de inicio de sesión, o escribo nada y hago clic en el botón de inicio de sesión, siempre me redirecciona a ResultDetails.aspx. Eso significa que el inicio de sesión falla. El inicio de sesión pasará si me redirecciona a Search.aspx. ¿Qué está mal? Incluso si cambio .Value a .Text, sigue siendo el mismo efecto

MI CÓDIGO FUENTE

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> </style> <link rel="stylesheet" type="text/css" href="stylesheets/loginstyle.css" /> <script language="javascript" type="text/javascript"> // <![CDATA[ function Button1_onclick() { if (txtUserName.Value == "Admin" && txtPassword.Value == "123") { //Login as Hardcoded User //Do your stuff window.location.assign("Search.aspx") } else { window.location.assign("ResultDetails.aspx") } } // ]]> </script> </head> <body> <div id="wrapper"> <form name="login-form" class="login-form" action="" method="post"> <div class="header"> <h1>Login Form</h1> <span>Fill out the form below to login to my super awesome imaginary control panel.</span> </div> <div class="content"> <input name="username" type="text" class="input username" placeholder="Username" runat="server" id="txtUserName" /> <div class="user-icon"></div> <input name="password" type="password" class="input password" placeholder="Password" runat="server" id="txtPassword" /> <div class="pass-icon"></div> </div> <div class="footer"> <input type="button" name="submit" value="Login" class="button" runat="server" id="Button1" önserverclick="Button1_Click" onclick="return Button1_onclick()" /> </div> </form> </div> <div class="gradient"></div> </body> </html>

MI CÓDIGO DETRÁS DEL CÓDIGO

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }


Necesita acceder a los campos adecuadamente

p.ej

if (document.getElementById(''txtUserName'').value == "Admin" && document.getElementById(''txtPassword'').value == "123")


No está utilizando controles de servidor asp.net para acceder a valores como

txtUserName.Value

Por el contrario, está utilizando Javascript on HTML controles Javascript on HTML . Entonces, tu sintaxis debería ser como:

if (document.getElementById("txtUserName").value == "Admin" && document.getElementById("txtPassword").value == "123")


Puede probar el siguiente código que obtiene el valor de los cuadros de texto usando el id en JavaScript.

function Button1_onclick() { if (document.getElementById(''txtUserName'').value == "Admin" && document.getElementById(''txtPassword'').value == "123") { //Login as Hardcoded User //Do your stuff window.location.assign("Search.aspx") } else { window.location.assign("ResultDetails.aspx") } }


Si está utilizando Jquery lib en su código, también puede hacer

if($.("#txtUserName").val()=="Admin" && $.("#txtPasword").val()=="123")


if (document.getElementById("txtUserName").value == "Admin" && document.getElementById("txtPassword").value == "123")