Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Wordpress walidacja formularzu.
cykcykacz
post
Post #1





Grupa: Zarejestrowani
Postów: 550
Pomógł: 9
Dołączył: 29.05.2009
Skąd: Ostrów Wielkopolski

Ostrzeżenie: (0%)
-----


Witam,

mam taki problem stworzyłem Plugin do Wordpressa i dodałem Javascript do sprawdzania formularzy.

Po kliknięciu wyskakuje alert 'Please enter a value for the Name' ale akcja wykonuje się dalej. Pewnie jest to sprawka wordpressa ale nie wiem jak temu zardzić. Help Me.

Nie wiem jak sprawić aby po kliknięciu oczywiście jeśli dane są nie prawidłowe formularz nie zapisywał danych do bazy.

Mam to tak oprogramowane chodzi o ostatnią funkcję pokazuje alert ale po chwili formularz i tak zapisuje dane:
CODE

<script type="text/javascript">
function validateRegEx(regex, input, helpText, helpMessage) {
// Sprawdzamy czy dane wejściowe są w porządku
if (!regex.test(input)) {
// Dane są nieprawidłowe, a zatem wyświetlamy komunikat i zwracamy false
if (helpText != null)
helpText.innerHTML = helpMessage;
return false;
}
else {
// Dane są OK., zatem czyścimy komunikat i zwracamy true
if (helpText != null)
helpText.innerHTML = "";
return true;
}
}

function validateNonEmpty(inputField, helpText) {
// Sprawdzamy czy pole zawiera jakąkolwiek treść
return validateRegEx(/.+/,
inputField.value, helpText,
"Proszę podać wartość.");
}

function validateLength(minLength, maxLength, inputField, helpText) {
// Sprawdzamy czy łańcuch znaków nie jest krótszy od minLength, a jednocześnie
// czy nie jest dłuższy od maxLength.
return validateRegEx(new RegExp("^.{" + minLength + "," + maxLength + "}$"),
inputField.value, helpText,
"Proszę podać tekst o długości od " + minLength + " do " + maxLength +
" znaków.");
}

function validatecost(inputField, helpText) {
// Najpierw sprawdzamy czy pole zawieraj jakieś dane
if (!validateNonEmpty(inputField, helpText))
return false;

// Następnie sprawdzamy czy wartość wpisana w polu jest datą
return validateRegEx(/^\d{1}\,(\d{2})$/,
inputField.value, helpText,
"Proszę wpisać prawidłową cenę (np.: 14/01/1975).");
}

function placeOrder(form) {
if (
validatecost(form["pricelist_normal_monday"], form["pricelist_normal_monday_help"]) //&&

// Przesyłamy zamówienie na serwer
form.submit();
} else {
alert('Please enter a value for the Name');
return false;

}
}
</script>


Kod
<input type="submit" class="button-primary" name="submit" onclick="placeOrder(this.form);" value="<?php _e('Save Changes') ?>">


EDIT
Ok mam już prosta sprawa dla osób znających się na JS:
Kod
<input type="submit" class="button-primary" name="submit" onclick="placeOrder(this.form);" value="<?php _e('Save Changes') ?>">

zamienic na
Kod
<input type="submit" class="button-primary" name="submit" onclick="return placeOrder(this.form);" value="<?php _e('Save Changes') ?>">


Ten post edytował cykcykacz 3.04.2013, 12:40:25
Go to the top of the page
+Quote Post
ssstrz
post
Post #2





Grupa: Zarejestrowani
Postów: 103
Pomógł: 17
Dołączył: 15.12.2012

Ostrzeżenie: (0%)
-----


Kod
function placeOrder(form) {
if (validatecost(form["pricelist_normal_monday"], form["pricelist_normal_monday_help"]) //&&

//TUTAJ BRAKUJE ZAMKNIĘCIA WARUNKU I KLAMRY OTWIERAJĄCEJ-------------
){
//--------------

// Przesyłamy zamówienie na serwer
form.submit();
} else {
alert('Please enter a value for the Name');
return false;

}
}

noi jak wyłącze w przeglądarce JS albo wyśle post curlem to dane się też dodadzą?
Go to the top of the page
+Quote Post
cykcykacz
post
Post #3





Grupa: Zarejestrowani
Postów: 550
Pomógł: 9
Dołączył: 29.05.2009
Skąd: Ostrów Wielkopolski

Ostrzeżenie: (0%)
-----


Nie wiem nie sprawdzałem,
o czym poczytać?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 20:34