Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] Walidacja znaków
tenior
post
Post #1





Grupa: Zarejestrowani
Postów: 58
Pomógł: 2
Dołączył: 16.11.2008

Ostrzeżenie: (10%)
X----


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>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kamil4u
post
Post #2





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);
zmienna2 = cos..match(wyr); //taki przykład na szybko
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)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 17:14