Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jedna funkcja obsługująca kilka przycisków
kumi
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.04.2010

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


Mam na stronie kilka formularzy typu:

<form name="first" method="post">

<input name="source" type="text" value="0" style="float: left; width: 62px;" />
<input name="product" type="text" value="0" style="float: right; width: 62px;" />
<button type="button" onClick="buy(wm1)" style="float: left; width: 70px;">BUY</button>
<button type="button" style="float: right; width: 70px;">SELL</button>

</form>

Jak widać pierwszy button wywoluje przy naciśnięciu funkcję buy() z parametrem wm1, gdzie wm1 jest obiektem z kilkoma parametrami:

function buy(wm_selector) {
var gold = $('input[name=gold]').val();
var prize = wm_selector.prize;
if(gold>=prize) {
gold-=wm_selector.prize;
$('input[name=gold]').val(gold);
wm_selector.source++;
$('input[name=source]').val(wm_selector.source);
}
else alert('Niestety nie posiadasz srodkow do zakupu tego surowca');
}

Tak jak wspomniałem mam kilka takich samych formularzy w których input[name=source] stąd pytanie jak zrobić aby wpisywał wartość source tylko do tego jednego inputa, z którego formularza jest wywoływana funkcja?

Ten post edytował kumi 20.04.2010, 13:10:56
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




uzywaj bbcode

No a nie mozesz dodac drugiego parametru do funkcji, ktory bedzie identyfikował formularz?
Go to the top of the page
+Quote Post
kumi
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.04.2010

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


Cytat(nospor @ 20.04.2010, 14:37:15 ) *
uzywaj bbcode


W tym rzecz, że nie moge (IMG:style_emoticons/default/winksmiley.jpg) Cały projekt mam do napisania w JS + jakaś bibliotek. Jako bibliotekę wybrałem jQuery i próbowałem wcześniej zrobić to za pomocą jednego eventu niestety nie przeszło, a wyglądało tak:

$(':button[name=buy1]').click(function(this.value) {
aaa = this.value;
var gold = $('input[name=gold]').val();
var prize = aaa.buy_prize;
if(gold>=prize) {
gold-=aaa.buy_prize;
$('input[name=gold]').val(gold);
aaa.source++;
$('input[name=source]').val(aaa.source);
}
else
alert('Niestety nie posiadasz srodkow do zakupu tego surowca');
});
gdzie this.value miało mi wskazywać do którego obiektu się akurat odwołuje.

Mógłbym dodać ten drugi parametr i pewnie zrobię tak jeżeli nie znajdę rozwiązania o jakim myśle. Ogólnie chciałem zrobić funkcję bez parametru, a JS sam by wyciągał dane z formularza, które ja chcę akurat zmienić i bedą zawarte w funkcji.
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
W tym rzecz, że nie moge
Nawet nie wiesz co to jest bbcode a juz mowisz ze nie mozesz uzywac.... normalnie brak slow.

zamykam a ty tymczasem przejrzyj google/forum w poszukiwaniu informacji co to jest bbcode. Nawet w naszym regulaminie jest. Jak już doczytasz mniej więcej co to jest bbcode i wyrazisz chęć jego stosowania - zapraszam na PW
Go to the top of the page
+Quote Post

Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 06:38