Skocz do zawartości

[JS] Okienko, checkboxy, zakładki


Makary155

Rekomendowane odpowiedzi

1. Jak zrobić w javascripcie okienko podobne do alerta, z tym że moge modyfikować jego wygląd i/lub dodawać inne bajery typu formularz na nim?

 

2. W formularzu mam 5 checkboxów. Jak zrobić zabezpieczenie, żeby można było zaznaczyć tylko 3 z nich i żeby to sprawdzenie było przed wysłaniem formularza do php, najlepiej żeby nie można było nawet zaznaczyć czwartego.

 

3. Jak zrobić wyświetlanie różnych elementów na zakładkach, elementy są wczytane w całości i nie chce aby podczas przełączaniu zakładki wystąpiło przeładowanie strony.

 

Z góry dzięki, to dosyć ważne.

Odnośnik do komentarza
Udostępnij na innych stronach

1. div z position:absolute. Najprościej.

 

2.

for( var i = 0; i < group.length; i++ )
{
    group[i].group = group;
    group[i].onclick = function()
    {
        var count = 0;
        for( var i = 0; i < this.group.length; i++ )
        {
            if( this.group[i].checked )
                count++;
        }
        if( count > 3 )
        {
            this.checked = false;
            return false;
        }
    }
}

group to array z inputami typu checkbox.

 

3. ?

Odnośnik do komentarza
Udostępnij na innych stronach

3.

<html>
    <head>
        <script type="text/javascript">
            onload = function()
            {
                
                // czyszczenie ze zbednych elementow
                function clear( element )
                {
                    if( element.childNodes )
                    {
                        for( var i = 0; i < element.childNodes.length; i++ )
                        {
                            if( element.childNodes[i].nodeType !== 1 )
                                element.removeChild( element.childNodes[i] );
                        }
                    }
                    return element;
                }
            
                var a = clear( document.getElementById( 'zakladki' ) );
                var b = clear( a.childNodes[0] );
                var c = clear( a.childNodes[1] );

                for( var i = 0; i < b.childNodes.length; i++ )
                {
                    if( c.childNodes[i] )
                    {
                        b.childNodes[i].c = c;
                        b.childNodes[i].i = i;
                        b.childNodes[i].onclick = function()
                        {
                            for( var i = 0; i < this.c.childNodes.length; i++ )
                                this.c.childNodes[i].style['display'] = 'none';
                            this.c.childNodes[this.i].style['display'] = 'block';
                        }
                        c.childNodes[i].style['display'] = 'none';
                    }
                    else
                        b.removeChild( b.childNodes[i] );
                }
                for( var i = b.childNodes.length; i < c.childNodes.length; i++ )
                    c.removeChild( c.childNodes[i] );
                
                c.childNodes[0].style['display'] = 'block';
            }
        </script>
    </head>
    <body>
        <div id="zakladki">
            <div>
                <span>
                    Pokaż 1
                </span>
                <span>
                    Pokaż 2
                </span>
                <span>
                    Pokaż 3
                </span>
                <span>
                    Pokaż 4
                </span>
                <span>
                    Pokaż 5
                </span>
            </div>
            <div>
                <div>
                    Zakładka 1
                </div>
                <div>
                    Zakładka 2
                </div>
                <div>
                    Zakładka 3
                </div>
                <div>
                    Zakładka 4
                </div>
                <div>
                    Zakładka 5
                </div>
            </div>
        </div>
    </body>
</html>

Odnośnik do komentarza
Udostępnij na innych stronach

Zazwyczaj gotowe biblioteki pozwalają wyświetlić eleganckie zakładki, okienka.

2. Takie zabezpieczenie nic nie da, ponieważ można wysłać ręcznie żądanie do serwera z zaznaczonymi wszystkimi checkboxami, dlatego zabezpiecz się również po stronie serwera.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...