Centrum Fanów Symulatorów » Hardware & Software » pytanie do CSS/JS mastah
Napisz nowy temat    Odpowiedz do tematu

pytanie do CSS/JS mastah

Idź do strony Poprzedni  1, 2, 3, 4, 5, 6, 7  Następny
Autor Wiadomość
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-11-29, 19:35      pytanie do CSS/JS mastah Odpowiedz z cytatem
Yeah, bede Cie musial umiescic w about dot. serwisu GTR
Dzieki

Napisalem sobie troche funkcji ktore razem dają nastepujacy rezultat:
1. ograniczaja ilosc liter wpisywanych do pola textowego
2. ograniczaja typ wpisywanych znakow (tylko cyfry, tylko litery, tylko znaki do nr telefonu etc)
3. Rozpoznaja czy text w polu jest selected (potrzebne aby wylaczyc ograniczanie ilosci znakow gdy jest wpisana max ilosc ale przy selected trzeba pozwolic na wpisanie pierwszego znaku - zamiana zaznaczonego fragmentu)

Ogolnie dziala to super. I aplikacje pisane pod pzegladarke naprawde wiele na tym zyskuja.

Niestety nie dziala to do konca pod Firefoxem. Przypuszczalnie FF nie potrafi rozpoznac lub trzeba uzyc innej metody na rozpoznanie jaki klawisz zostal wcisniety. Bo np przy max liczbie znakow w polu nie dziala backspace czy delete (a w takiej sytuacji powinien). Ponizej moje funkcje JS.

Dwie ciekawostki. Dla pol textowych (<INPUT type="text"...) w IE nie dziala metoda onChange. Dziala np. dla Selectow. Wieksza ciekawostka jest to ze jesli wpisywanym znakiem jest nawias otwierajacy '(' to funkcja go przepuszcza mimo ze jej nie wolno. za to prawidlowo reaguje na zamykajacy nawias.. i jest kilka raptem takich znakow jeszcze.

function CountSpecyficChars(formnr, elementnr, len, e, mode)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
if ((keycode==8) || (keycode==9) || (keycode==13) || (keycode==16) || (keycode==39) || (keycode==37) || (keycode==38) || (keycode==40)) { return true; }

var m = document.forms[formnr].elements[elementnr].value;
var mm = m.length;

if (mode) if (!KeyCheck(0,e,mode)) return false;
if (mm>=len) return false;


return true;
}

function KeyCheck(myfield,e, mode)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;

// alert (mode + ' ' + keycode );

// space
if ((mode == 'alphanumpl' || mode == 'alphapl' || mode == 'alphanum' || mode == 'alpha' || mode == 'phone') && keycode==32) return true;
// numeric
if ((mode == 'num' || mode == 'alphanumpl' || mode == 'alphanum' || mode == 'nip' || mode == 'postal' || mode == 'phone' || mode == 'email') && ((keycode>47 && keycode<58 ) || keycode==8 || keycode==13) ) return true;
if (mode == 'nip' && keycode==45) return true;
if (mode == 'postal' && keycode==45) return true;
if (mode == 'phone' && (keycode==45 || keycode==41 || keycode==43)) return true;
if ((mode == 'alphanum' || mode == 'alpha' || mode == 'email') && ((keycode>=65 && keycode<=90) || (keycode>=97 && keycode<=122))) return true;
if (mode == 'email' && (keycode==64 || keycode==45 || keycode==46 || keycode==94)) return true;
if ((mode == 'alphanumpl' || mode == 'alphapl') && ((keycode>=65 && keycode<=90) || (keycode>=97 && keycode<=122) || (keycode>=260 && keycode<=263) || keycode==280 || keycode==281 || (keycode>=321 && keycode<=324) || keycode==211 || keycode==243 || keycode==346 || keycode==347 || (keycode>=377 && keycode<=380) )) return true;

return false;
}


wykorzystanie to dodanie eventu, np
onKeyPress="return CountSpecyficChars(0,4,20,event,'num')";
pominiecie parametru ostatniego powoduje tylko ograniczenie dlugosci pola bez ograniczenia typu danych.

Z gory dzieki za pomoc. Jesli komus sie skrypty/pomysly podobaja moze je swobodnie wykorzystywac. ja tez sie wzorowalem na rozwiazaniach dostepnych w necie.
 
Reklamy
k3rmit


Dołączył: 11 Cze 2004
Posty: 789
Miasto: Tychy

Post2004-11-29, 20:19      pytanie do CSS/JS mastah Odpowiedz z cytatem
MaXyM napisał:
Yeah, bede Cie musial umiescic w about dot. serwisu GTR
Dzieki

hihihi super thx

MaXyM napisał:

[ciach] 1. ograniczaja ilosc liter wpisywanych do pola textowego [ciach]

nie do konca rozumiem po co taka funkcja, mozna przeciez ustawic maxlength w <input>
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-11-29, 22:10      pytanie do CSS/JS mastah Odpowiedz z cytatem
hmm. serio? ale jaja, a ja sie meczylem. a to wszystko przez to ze widzialem podobna funkcje w JS... lol

Dzieki. Przerowbie. zobacze co powie FF na sprawdzanie z jakiego zakresu jest wpisywany znak. pewnie nic nie powie
 
Nogal


Dołączył: 18 Sie 2001
Posty: 5672
Miasto: Kraków

Post2004-11-29, 23:58      pytanie do CSS/JS mastah Odpowiedz z cytatem
Jak sie nie ma wiedzy to trzeba sie narobic
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-11-30, 03:49      pytanie do CSS/JS mastah Odpowiedz z cytatem
żebys wiedzial... a moze w HTMLu sie da ograniczyc typ wpisywanych danych?

A przy okazji takze: mozna zaladowac POSTem content z pliku. Ale oczywiscie mamy ograniczenie czasu wykonywania sie skryptu, wiekosc danych etc. z drugiej strony naglowek takiego forma ma w nazwie 'multipart'. czy to cos znaczy? czy moze byc wykorzystane do uploadowania dowolnie duzych plikow bez wzgledu na ustawienia w apachu i php?
 
Richie


Dołączył: 16 Sie 2001
Posty: 20333
Miasto: Lublin/Wrocław

Post2004-11-30, 11:02      pytanie do CSS/JS mastah Odpowiedz z cytatem
MaXyM napisał:
czy moze byc wykorzystane do uploadowania dowolnie duzych plikow bez wzgledu na ustawienia w apachu i php?


nie, ograniczenia w php.ini na przyklad sa nadrzedne i zawsze obowiazujace
 
k3rmit


Dołączył: 11 Cze 2004
Posty: 789
Miasto: Tychy

Post2004-11-30, 19:08      pytanie do CSS/JS mastah Odpowiedz z cytatem
MaXyM napisał:
żebys wiedzial... a moze w HTMLu sie da ograniczyc typ wpisywanych danych?

tego juz sie raczej nie da zrobic w zwyklym HTMLu
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-12-02, 17:17      pytanie do CSS/JS mastah Odpowiedz z cytatem
Richie, obawiam sie ze sie mylisz.

ini_set('post_max_size', '20M'); /default 8M lub jak w php.ini
ini_set('upload_max_filesize', '20M'); /default 2M lub jak w php.ini


 
Richie


Dołączył: 16 Sie 2001
Posty: 20333
Miasto: Lublin/Wrocław

Post2004-12-02, 17:26      pytanie do CSS/JS mastah Odpowiedz z cytatem
znaczy co administrator ustawia na serwerze 5M a kazdy user we wlasnym skrypcie moze to ominac i ustawic sam sobi wiekszy np. 20M? no to bez sensu wtedy jest cale php ... mysle ze user moze ustawic wlasnie ograniczenia ale MNIEJSZE niz sa ustawione na sztywno odgornie na serwerze, wieksze to by bylo naprawde bez sensu jakby mogl nie sadzisz?
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-12-02, 17:34      pytanie do CSS/JS mastah Odpowiedz z cytatem
Ano masz racje. nie doczytalem

Not all the available options can be changed using ini_set(). Below is a table with a list of all PHP options (as of PHP 4.2.0), indicating which ones can be changed/set and at what level.

I w tabeli sa zmienne PHP_INI_SYSTEM i PHP_INI_ALL ... moj blad.
 
Richie


Dołączył: 16 Sie 2001
Posty: 20333
Miasto: Lublin/Wrocław

Post2004-12-02, 22:56      pytanie do CSS/JS mastah Odpowiedz z cytatem
uff jako admin odetchnalem chyba rozumiesz to tak jakby na o2.pl kazdy user zalozyl sobie konto 10mb pojemnosci, ale przez ustawienie swojego Outlooka mogl je sam powiekszyc do 100mb sobie wbrew limitowi na serku

p.s. jak ty wygladasz na tym nowym avatarze?
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-12-03, 11:05      pytanie do CSS/JS mastah Odpowiedz z cytatem
No dobra. to teraz trudniejsze

Wiem (kiedys to widzialem ale nie wiem jaka metoda czy nie microsoftowa jakąs) ze cos takiego moze istniec.

Chodzi mi o sposób jak zrobic aby zawartosc komorki tabeli (text) była obcinana w momencie nie mieszczenia sie w tabeli. Tzn zawsze jak jest wieksza to sie zawija albo rozpycha komorke. A ja bym chcial ustawic szerokosc komorki na sztywno a text nie mieszczacy sie w jednej linii w tej komorce zeby byl dociety wraz z koncem komorki.

Moglbym to zrobic zawierajac ten text w polu textowym formularza a ten w komorce tabeli.. ale to takie nieeleganckie...
 
Nogal


Dołączył: 18 Sie 2001
Posty: 5672
Miasto: Kraków

Post2004-12-03, 11:36      pytanie do CSS/JS mastah Odpowiedz z cytatem
A nie mozesz za kazdym razem brac substring'a ? Jesli tekst bedzie dluzszy to obetnie, jak nie, to nie
 
MaXyM


Dołączył: 17 Sie 2001
Posty: 6289
Miasto: Kraków GG:1905678

Post2004-12-03, 12:36      pytanie do CSS/JS mastah Odpowiedz z cytatem
Substring ma to do siebie ze trzeba podac ilosc znakow co przy czcionce proporcjonalnej jest nienajlepszym pomysłem (ale tak to robie teraz). No jak sie domyslasz nienajładniej to wygląda.

Dodatkowo zmiana czcionki (stylu czy wielkosci) pociaga za sobą modyfikacje kodu PHP a ja bym chciał robić projekty gdzie skinowanie wymagałoby tylko zmian w CSS i ew grafice
 
k3rmit


Dołączył: 11 Cze 2004
Posty: 789
Miasto: Tychy

Post2004-12-03, 13:40      pytanie do CSS/JS mastah Odpowiedz z cytatem
mysle, ze daloby sie to zrobic nadajac styl DIV'owi
pogooglam wieczorkiem jak bede w domu
 
Centrum Fanów Symulatorów » Hardware & Software » pytanie do CSS/JS mastah Idź do strony Poprzedni  1, 2, 3, 4, 5, 6, 7  Następny
Napisz nowy temat  Odpowiedz do tematu
Skocz do: