|
TwojePC.pl © 2001 - 2025
|
 |
A R C H I W A L N A W I A D O M O Ś Ć |
 |
| |
|
Jednak potrzebuję krótkiej pomocy z Javascript , kubazzz 16/08/08 23:04 połapałem się już w składni tego języka i mniej więcej w metodach jak coś można osiągnąć i oczywiście próbowałem w praktyce zrobić.
na podstawie kilku tutoriali zrobiłem prosty skrypt, który sprawdza adres email. w praktyce wszędzie jest to samo, ja bym sobie dodał jakieś swoje warunki, ale póki co to co przepisałem do swojej strony z w3schools mi nie działa..
a przykład skopiowany z ich strony działa.
wkleję teraz kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; utf-8">
<script type="text/javascript">
function sprawdzmail(adres)
{
with (adres)
{
atpos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (atpos<1||dotpos-atpos<2)
{
klasa=getElementById("adres");
klasa.class="kolor";
klasa.className="kolor";
alert("Kurwa");
return false;}
else {return true;}
}
}
function sprawdzform(thisform)
{
with (thisform)
{
if (sprawdzmail(email)==false)
{email.focus();return false;}
}
}
</script>
</head>
<body>
<form action="formularz.php" onsubmit="return sprawdzform(this);" method="post">
<span id="adres">Adres e-mail</span><br>
<input type="text" name="email" size="30" maxlength="60"><br>
<input type="submit" value="wyslij">
</form>
</body>
</html>
Pal licho to dodanie klasy [chociaż na tym mi też zależy], ale nawet ten alertbox się nie pokazuje.
po prostu puszcza formularz..
nie wiem co źle zrobiłem, nie mogę znaleźć przyczyny.SM-S908 - nie ukrywam, że liczę na pomoc jakąś , kubazzz 16/08/08 23:20
bo jak przychodzi co do czego to nikt w Polsce się nie zna na javascript... :)
a jak gołe baby to kur.. źleSM-S908 - tey :p , waski 16/08/08 23:32
Pozno jest, posta przeczytalo 6 osob dopiero, a Ty juz bys chcial pomoc jakas ;)
Blad masz tutaj:
zamiast
klasa=getElementById("adres");
daj
klasa=document.getElementById("adres");
i zadziala :)
Tak na przyszlosc:
1 Masz konsole bledow w Operze / FF ktora od razu pokazuje gdzie jest blad. Robisz np tak: czyscisz konsole, otwierasz Twoja strone, patrzysz czy sie nic nie posypalo. Jesli nie, klikasz buttona - masz komunikat bledu.
2 Radze przetestowac FireBuga dla FF / "narzedzia dla developerow" w Operze. W nowej Operce zwie sie to DragonFly czy jakos tak.
3 Sprawdzanie adresow e-mail i innych pol rob wyrazeniami regularnymi w JS a nie w ten sposob co teraz. Gdybym mial sprawnego swojego kompa, podeslalbym taki przykladowy formularz ktory robil troche walidacji w ten sposob. Niestety zasilacz padl, czekam na wymiane i tymczasowo siedze na Celku 600 (compaq, zasilacza nie przeloze :/ )SNAFU
Situation Normal, All Fucked Up - no i wlasnie nie bo i tak powinien alert wyskoczyc , kubazzz 16/08/08 23:36
a nie wyskakuje.
a jakie to sa wyrazenia regularne bo ja JS to sie ucze na szybko i do tej pory znalazlem tylko takie metody weryfikacji pol formularzy.
A to o pomocy to napisalem na zapas bo tutaj nic oprocz golych bab i innych oftopikuf się nie cieszy zainteresowaniem.. ;)SM-S908 - ech , kubazzz 16/08/08 23:40
a jednak to to, rzeczywiscie js sie w tym miejscu wywala. a ja myslalem, ze on w razie takiego bledu leci dalej.
i tez nie wiedzialem, ze konsola bledow obejmuje javascript.
to jeszcze tylko te wyrazenia regularne to sobie pogoogluje.SM-S908 - hmm , waski 16/08/08 23:48
Kodu w zasadzie nie przegladalem bo usypiam, ale po poprawce jak wpisze bezsensowny mail jest "kurwa" a jak sensowny to nie.
Wyrazenia regularne to zasadniczo standard, czasem implementacje roznia sie drobnymi niuansami. W kazdym razie poczytaj:
http://en.wikipedia.org/wiki/Regular_expressions
Dokumentacje dla JS masz tutaj:
http://developer.mozilla.org/...bal_Objects:RegExp
a przykladow po wpisaniu slow kluczowych do googla masz mnostwo, wiec mysle ze sobie poradzisz :)SNAFU
Situation Normal, All Fucked Up - hmm , kubazzz 17/08/08 00:01
mialbys chwile na gg pogadac?
juz zalapalem o co chodzi z tymi wyrazeniami regularnymi, okazuje sie, ze wiem o co chodzi mniej wiecej;)
ale mam jeszcze pare innych watpliwosci, ktore wynikaja z braku doswiadczenia.SM-S908 - nom , waski 17/08/08 00:08
gg w profilu
Od razu uprzedzam, ze zbyt wielkiej wiedzy to nie mam w tym temacie ;) Jakies projekciki na studiach robilem... w sumie nic wiecej. Ale jesli bede mogl pomoc, to pomoge.SNAFU
Situation Normal, All Fucked Up
- oj tam , ViS 16/08/08 23:32
znam parę osób które w tym siedzą.
Ja niestety nie znam się kompletnie, ale gołe baby chętnie obejrzę. O!
:)I will not buy this record - it is
scratched.
- No i nie słuchasz starszych.... A mówiłem poprzednio, użyj jakiegoś , Mcmumin 17/08/08 00:27
frameworka javascriptowego np. JQuery. Chcesz mieć ładne, ajaxowe i proste formularze??
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Description" content="" />
<meta name="Keywords" content="" />
<script type="text/javascript" src="./js/jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="./js/jquery.validate.js"></script>
<script type="text/javascript" src="./js/jquery.form.js"></script>
<script type="text/javascript" src="./js/jquery.maskedinput-1.1.3.pack.js"></script>
<script type="text/javascript" src="./js/biblioteka.js"></script>
<link rel="stylesheet" type="text/css" href="./css/style.css">
<title></title>
<body>
<div id="container">
<div id="header"></div>
<div id="result"></div>
<div id="main">
<form id="loguj_form" method="POST" action="./action/check_login.php">
<fieldset>
<legend>Adres email:<br /></legend>
<label for="Email">Twój adres e-mail:</label>
<input id="Email"/>
<br />
<div>
<input class="submit" type="submit" value="Wyslij"/>
</div>
</fieldset>
</form>
</div>
</div>
</body>
</html>- Odpowiednio biblioteki (w wielkim skrócie): , Mcmumin 17/08/08 00:34
jquery - wiadomo, validate.js - banalna walidacja, jquery.form.js- umożliwia "przekierowanie wyniku" działania pliku php na stronę formularza i wyrzucenie wyniku w odpowiednim obiekcie np. id="result". jquery.maskedinput-1.1.3.pack.js - walidacja wprowadzanych danych na bieżąco. biblioteka.js - tu wrzucamy swój kod. W trzeciej części zajmiemy się zawartością tej biblioteki... - hmm , kubazzz 17/08/08 00:37
patrzyłem na tego jQuery, ale szczerze mówiąc nie umiałem tego ogarnąć.
JavaScript kumam doskonale jak czytam krok po kroku, a tutorial do jquery zaczyna sie od razu od czarnej magii troche...
a ze nie potrzebuje wiele i chcialem szybko dlatego olalem jQuery.SM-S908 - looknij do działki numer 3 - gdzie masz tam czarną magię?????? , Mcmumin 17/08/08 00:41
123
- part 3 , Mcmumin 17/08/08 00:40
$(document).ready(function(){
var loader = jQuery('<div id="loader"><img src="./img/ajax-loader.gif" alt="Sprawdzam..." /></div>')
.css({position: "absolute", top: "40%", left: "50%"})
.hide()
.appendTo("body");
jQuery().ajaxStart(function() {
loader.show();
}).ajaxStop(function() {
loader.hide();
}).ajaxError(function(a, b, e) {
throw e;
});
<--- inicjujemy jquery i zarzucamy nową warstwę z latającą popierdułką na czas akcji ajaxowych
$.mask.addPlaceholder("~","[+-]");
$("#phone").mask("(99) 999-99-99"); <-- np. sprawdzanie formatu wprowadzanego numeru telefonu za pomocą jquery.maskedinput
var v = jQuery("#loguj_form").validate({
submitHandler: function(form) {
jQuery("#loguj_form").ajaxSubmit({
target: "#result"
});
},
rules: {
Email: {
email: true,
required: true
} },
messages: {
Email: {
email: "Prosze podac wlasciwy adres email",
required: "Podaj Twój adres email"
}
});
}); <-- no i caaałe i skomplikowane sprawdzanie w JQuery - pole jest wymagane - true, musi być poprawnym numerem telefonu: email: true i dowidzenia - Achaś i oprócz sprawdzania danych wprowadzanych przez juzera , Mcmumin 17/08/08 00:46
najważniejsze/strategiczne dane sprawdzamy po stronie serwera (np. korzystając ze wspomnianych wyrażeń regularnych i php). Od tego jest ajax, żeby zrobić to bez przeładowania stronki i w locie.- dobra , kubazzz 17/08/08 01:01
będę rozkminiał to wszystko, może w tydzień uda mi się opanować podstawy.
Bo dla mnie ajax to też nowość:)
ja z dynamicznymi stronami nie mam doswiadczenia, troche php i mysql, ale wczesniej js i ajax'a nie uzywalem.
swoja droga teraz tez jakis gigantycznych potrzeb nie mam bo robie stronki dla siebie, na luzie bardziej.
ale sprobuje tego co piszesz.SM-S908 - Aśtam w tydzień... Zresztą normalnie bierzesz i kopiujesz i tyle :) , Mcmumin 17/08/08 02:00
Np. stąd: http://jquery.bassistance.de/...ontainer-demo.html
- firebug do FF , Wedrowiec 17/08/08 15:53
jest rewelacyjny, nie wyobrażam sobie np. robienia czegoś z ajaxem bez tego. Tylko jedno "ale" - jak coś Ci przestaje działać a powinno - wyłącz firebuga i sprawdź ponownie - niestety czasami sam firebug powoduje niedziałanie skryptu ;)"Widziałem podręczniki
Gdzie jest czarno na białym
Że jesteście po**bani" - funkcja , Hakkatuka 21/08/08 23:01
function validateEmail(elementValue)
{
var emailPattern = /^[a-zA-Z0-9\._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
return emailPattern.test(elementValue);
}
znalezione na:
http://www.zparacha.com/...ipt-regular-expression/Bano - hmmm , Birdman 22/08/08 16:39
www.phpfi.com
bedzie troche czytelniejping? |
|
|
|
 |
All rights reserved ® Copyright and Design 2001-2025, TwojePC.PL |
 |
|
|
|