Hola a tod@s! Vereis, estoy empezando con javascript y ya me ha surgido un problemilla.
Estoy haciendo pruebas con asp.net y lo que quería hacer es ocultar o mostrar una capa mediante javascript.
Lo que tengo simplemente es un div en el que hay un textbox y un botón fuera de ese div. El div lo tengo oculto por defecto y, cuando pincho sobre el botón, se muestra el textbox del div pero, inmediatamente, se vuelve a ocultar.
Seguramente esta será una de las cosas más sencillas de hacer en javascript, pero yo no consigo que funcione. Agradecería un montón que alguien pudiera darme alguna idea.
Aquí os dejo el código que tengo. Muchas gracias de antemamo
En mi página aspx tengo lo siguiente:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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>Página sin título</title>
</head>
<body>
<script language="JavaScript">
function mostrar()
{
var capa = document.getElementById('caja');
if( capa.style.display == "none")
{
capa.style.display = "block";
}
else
{
capa.style.display = "none";
}
}
</script>
<form id="form1" runat="server">
<div>
<div id="caja" style="left: 293px; width: 316px; position: absolute; top: 152px; height: 68px; display:none ">
<asp:TextBox ID="TextBox1" runat="server" BackColor="#8080FF" Style="left: 90px;
position: absolute; top: 19px"></asp:TextBox>
</div>
<asp:Button ID="Button1" runat="server" Style="left: 405px; position: absolute; top: 110px" Text="Button" />
</div>
</form>
</body>
</html>
y en mi página aspx.cs tengo esto:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
Button1.Attributes.Add("onclick", "javascript:mostrar();");
}
}