Avatar billede suppenudel Nybegynder
14. juli 2006 - 09:24 Der er 14 kommentarer og
1 løsning

2 client script-spørgsmål

Hej.

Jeg vil lige høre hvordan dette kan laves i asp.net:

1.

Hvis jeg har en textbox, som den der bruges til søgning oppe til højre her på siden:

<asp:TextBox ID="Soeg" runat="server" text="Søg"</asp:TextBox>

Hvordan kan jeg få teksten til at forsvinde når jeg klikker i den, ligesom denne gør?

2.

Kan jeg lave et client postback. Hvis f.eks. jeg gerne vil gøre en tekstbox synlig når jeg checker en checkbox:

Hvis jeg har:

<asp:CheckBox ID="Aktiver" runat="server" OnCheckedChanged="Aktiver_CheckedChanged"
            Text="Aktiver" AutoPostBack="True" />
        <asp:TextBox ID="TextBox1" runat="server" Visible="False"></asp:TextBox>

Og laver en:

    Protected Sub Aktiver_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
        If Aktiver.Checked = True Then
            TextBox1.Visible = True
        Else
            TextBox1.Visible = False
        End If
    End Sub

Bare så siden ikke loader igennem hver gang der klikkes. Har nemlig ikke helt forstået client scripting selvom jeg fandt en del om det på msdn..
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 09:36 #1
1.
attributes på din textbox:
C#
Soeg.Attributes["onClick"] = "this.value=''";

2.
Attributes på din checkbox
C#
Aktiver.Attributes["onClick"] = "document.getElementById('TextBox1').style.display='block';";
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 09:39 #2
Muligvis skal du lave lidt ekstra vis du vil beholde det brugeren skriver efter første tryk. :)
Avatar billede suppenudel Nybegynder
14. juli 2006 - 09:40 #3
Hej - Okay, hvor skal jeg smide attributterne hen i min kode?
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 09:41 #4
i din codebehind side.
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 09:42 #5
fx i Page_Load metoden.
Avatar billede suppenudel Nybegynder
14. juli 2006 - 09:42 #6
så bare i page_load?
Avatar billede suppenudel Nybegynder
14. juli 2006 - 09:42 #7
okay, jeg prøver det lige :-)
Avatar billede suppenudel Nybegynder
14. juli 2006 - 10:40 #8
Hej igen, nr. 1 virker fint!

2. giver lidt problemer..

Jeg sætter i min page_load:

Aktiver.Attributes("onclick") = _
"document.getElementById('TextBox1').style.display='block';"

Når jeg klikker i checkboxen sker der ikke noget på siden, men der kommer et lille ! nede i browseren "udført med fejl på siden".
Avatar billede suppenudel Nybegynder
14. juli 2006 - 10:41 #9
Jeg har fjernet autopostback på min checkbox, skal den event bruges længere?
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 14:15 #10
1. Ja du behøver ikke autopostback da det skal ske på klienten

2.
Hvis du laver Visible="False" på din textbox vil den slet ikke blive renderet til klienten.
Så du skal have en style på den.
fx. sådan her:


<%@ Page language="c#" Codebehind="test.aspx.cs" AutoEventWireup="false" Inherits="TeacherRegistration.test" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >

<html>
  <head>
    <title>test</title>
    <style>
    <!--
    #TextBox1{
        display:none;
    }
    -->
    </style>
  </head>
  <body MS_POSITIONING="GridLayout">
   
    <form id="Form1" method="post" runat="server">
        <asp:CheckBox ID="Aktiver" Runat="server"></asp:CheckBox>
       
        <br>
        <asp:TextBox ID="TextBox1" Runat="server" Text="test"></asp:TextBox>
    </form>
   
  </body>
</html>


CodeBehind:
protected CheckBox Aktiver;
        private void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here
            Aktiver.Attributes["onClick"] = "document.getElementById('TextBox1').style.display='block';";

        }
Avatar billede thomas_yde Nybegynder
14. juli 2006 - 14:18 #11
Du kan lave sådan her på dit søg felt:
Soeg.Attributes["onClick"] = "if(this.value == 'Søg') this.value='';";
Avatar billede thomas_yde Nybegynder
20. juli 2006 - 11:29 #12
Skal du bruge mere hjælp her?
Avatar billede suppenudel Nybegynder
23. juli 2006 - 12:31 #13
Hey, sorry har været away, men det er rigtig godt! Tak for den udførlige hjælp. Fik nu fattet lidt mere om hvordan client script virker, så jeg prøver at arbejde lidt videre med med din sidste kode :-) Skriver du det i hånden eller kan man få hjælp fra VS?
Avatar billede thomas_yde Nybegynder
23. juli 2006 - 12:56 #14
skriver det i hånden.
Tror ikke der er så meget hjælp at hente hos VS. Derimod google er din ven :)
Avatar billede suppenudel Nybegynder
23. juli 2006 - 13:56 #15
Super :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester