Formularz,i sumowanie liczb z wszystkich pól pod formularzem

Witam!

Mam problem, otóz wykonuję pewną stronę, na której mam formularz, i w nim kilkadziesiąt pól do wpisania ilości sztuk. Powiedzmy że nazwy to name=1, name=2, name=3 itd. I teraz jak zrobić, aby do forumalarza móc wpisywać tylko liczby, i na dole pod formularzem okienko z liczbą wybranych sztuk, które sumowałoby się jeszcze przed wysłaniem forumlarza (suma z wszystkich pól formularza). I jeżeli całkowita suma przekroczyłąby np.10 to wyskakiwałoby okienko że przekroczono limit?

PS. i na stronie formularz generowany będzie dynamicznie poprzez php, więc będe miał ilość pól do wpisywania sztuk w zmiennej $ilosc_pol;. Ale z tego co wiem to można to zrobić w Ajaxie tak żeby nie przejmować się ilością pól, i tak byłoby najlepiej.

Pozdrawiam

Przykład w jQuery (swoją drogą, zbyt ogólnie opisałeś swój problem):

// 

// 

// 

// itd.


jQuery(function($) {


	var total = 0, limit = 10, count;


	$('input[type="text"][name^="pole"]').each(function() {

		count = parseInt($(this).val(), 10);

		total += !isNaN(count) ? count : 0;

	});


	if (total > limit) {

		alert('Przekroczono dozwolony limit.');

	}


});

Niestety u mnie to nie działą. Mam formularz, który generowany jest poprzez skrypt PHP. Pole name to kolejne identyfikatory produktów, spełniające określone wymagania (czyli nie ma po kolei 1,2,3…5,7).

| '; echo " ".$wiersz['zdjecie']." | '; echo $wiersz[‘nazwa’]; echo ’ | '; echo $wiersz[‘opis’]; echo ’ | '; echo $wiersz[‘cena’]; echo ’ | '; echo ‘’; echo ’ |
[/code] Fragment odpowiedzialnu za generowanie formularza. W nagłówku strony mam:

[code] ?php echo $title; ?

I w formularzu mogę wpisywać dowolnie jakie liczby, a komunikat nigdy nie zostanie wyświetlony. Co jest nie tak, może coś u mnie nie tak?

Pozdrawiam

PS. W temacie JS, jestem załkowicie zielony, nie wiem co i jak. Cały czas wszystko robiłęm w PHP/MySQL a tego się tak nie da zrobić.

INPUT nie może mieć atrybutu NAME równego liczbie. Sprawdzałeś chociaż output walidatorem?

Swoją drogą, już wygenerowanym formularzem bym nie pogardził.

Kod pisany z palca, nie mam czasu go przetestować. Jeśli by coś nie działało, spróbuj zrezygnować z referencji (zamiast do „counter” odwoływać się globalnie do „total”). Ale z tym już sobie powinieneś poradzić sam.

[kod]

Ech, nie możesz poprawić literówki?…

[kod]

Ok dzięki, ale dalej po wpisaniu w formularz liczb których suma przekracza 10 nic się nie dzieje. Coś dalej jest nie tak

Pozdrawiam

http://pastie.org/363932

Dzięki wielkie, działa aż miło się patrzy. Zaraz dostosuję to pod swój skrypt, musi działać :slight_smile: A jeszcze taka kwestia, czy dałoby radę, abym pod formularzem miał div-a, w którym wyświetlałaby się aktualna suma z wszystkich okienek?

http://pastie.org/363994

Ok dziękuję bardzo, nie wiem jak Ci się odwdzięcze. Oby więcej takich forumowiczów.

Pozdrawiam