![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
Mam mały skrypt, chcę aby z formularzu dawał alert jedynie gdy znajdą się w nim znaki: " ' \
Pytanie jak to osiągnąć? Kod <script type="text/javascript">
function $( id ) { return document.getElementById(id).value; } function check_zmien () { var error = ''; nazwa = document.getElementById('nazwa').value; comment = document.getElementById('comment').value; var regex = /^[a-zA-Z0-9ąćęłńóśżźĄĆĘŁŃÓŚŻŹ]{2,25}$/; var odp = regex.test(nazwa); var regexc = /^[a-zA-Z0-9ąćęłńóśżźĄĆĘŁŃÓŚŻŹ]{0,25}$/; var odpc = regexc.test(comment); if ( document.getElementById('nazwa').value == '' ) { alert('Nazwa') return false; } else if ( document.getElementById('auth').value == 'wybor' ) { alert('Wybierz') return false; } else if (!odp) { alert('Nie poprawna nazwa'); return false; } else { return true; } } </script> |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Metoda match objektu String: nazwa.match(wyrażenie regularne)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
to mi nic nie mówi
|
|
|
![]()
Post
#4
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
nie działa
|
|
|
![]()
Post
#6
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
u mnie działa
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
"Nie działa", bo ~piotrooo89 zapomniał albo specjalnie dał taki kod(żebyś sam też wykazał się trochę), który sprawdza tylko znaki: ' \, a " sam musisz dopisać (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Pytanie do mistrzów JS: Kod if (this.value.match(/\\|\'/)) { this.value=this.value.replace(/\\|\'/, ''); alert('error zly znak'); } W tym kodzie skrypt musi 2 razy szukać tego samo wyrażenia - obecnie pisze coś w czym wydajność ma kluczowe znaczenie - szukam sposobu, aby skrypt nie musiał 2 razy robić tego samego - jest jakiś sposób? W tym wypadku może wystarczy zwykły if na replace-a (nie chce mi się sprawdzać w dokumentacji czy replace coś zwraca), ale co w przypadku np. Kod zmienna1 = cos.split(wyr); Macie jakieś pomysły - sorry, że nowego tematu nie założyłem, ale mam nadzieję, że się nie obrazicie, jak podepnę się tutaj (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
zmienna2 = cos..match(wyr); //taki przykład na szybko |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Dodaj modyfikator(tak to się chyba nazywało) g:
Kod <input type="text" name="rok" onkeyup="
if (this.value.match(/\\|\'/)) { this.value=this.value.replace(/\\|\'/g, ''); alert('error zly znak'); }" /> |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
Dodaj modyfikator(tak to się chyba nazywało) g: Kod <input type="text" name="rok" onkeyup=" if (this.value.match(/\\|\'/)) { this.value=this.value.replace(/\\|\'/g, ''); alert('error zly znak'); }" /> i ostatni problem jak dodać ten głupi cudzysłów bo nawet jak dodaje: \ Kod <input type="text" name="rok" onkeyup=\"if(this.value.match(/\\|\'/)){this.value=this.value.replace(/\\|\'/g, '');}\"> to nic to nie daje |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Kod <input type="text" name="rok" onkeyup=" Znak | w wyrażeniach regularnych oznacza "lub" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
if (this.value.match(/\\|\'|\"/)) { this.value=this.value.replace(/\\|\'|\"/g, ''); alert('error zly znak'); }" /> Ten post edytował kamil4u 4.05.2009, 19:56:54 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 58 Pomógł: 2 Dołączył: 16.11.2008 Ostrzeżenie: (10%) ![]() ![]() |
Kod <input type="text" name="rok" onkeyup=" Znak | w wyrażeniach regularnych oznacza "lub" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) if (this.value.match(/\\|\'|\"/)) { this.value=this.value.replace(/\\|\'|\"/g, ''); alert('error zly znak'); }" /> dobra ale to co podales nie dziala może ktoś pomóc |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat może ktoś pomóc Pomoc to nie zrobienie kodu z kogoś prawda? Naprawdę nie jest to trudne..., najprościej to tak(nie powinienem tego robić): Kod <input type="text" name="rok" onkeyup="x(this);">
<script> function x(y){ if (y.value.match(/\\|\'|\"/)) { y.value=y.value.replace(/\\|\'|\"/g, ''); alert('error zly znak'); } } </script> |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 05:16 |