![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam formularz w którym wybieram datę (z kalendarzyka pop-up) i chciałbym aby w momencie wpisania daty w drugim polu formularza wpisał się odpowiedni dla tej daty kurs przechowywany w postaci listy w drugim pliku. Jak się za to zabrać? Wszelkie podpowiedzi będą mile widziane :-) |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Zapomniałaś kodu
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Kod jest jeszcze w powijakach ;-)
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Jaki przedział dat zawierasz w $kurs? (cały rok, wiele lat, czy jak?)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Chyba wiem o co Ci chodzi... W tym konkretnym przypadku trzeba by dodać jeszcze rok,
zmienić kolejność i zamienić "j" na "d" (czyli dzień miesiąca z zerem na początku) oraz "n" na "m" (podobnie dla miesiąca).
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie.. teraz się zastanowię..
W główce daj
kursy.php więc będą wyglądać +/- tak:
do tego inputa o name=data_f dodaj id=data_f do tego inputa o name=kurs dodaj id=kurs a na końcu funkcji ShowCal daj instrukcję:
Działa? Ten post edytował benio101 4.02.2011, 20:19:59 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Na razie nie...
Wyskakuje błąd: Brak definicji 'm' Kod function showCal(name) {
var lastCal=currentCal; var d=new Date(), hasCal=false; currentCal = findCalendar(name); if (currentCal != null && currentCal.form != null && currentCal.form[currentCal.field]) { var calRE = getFormat(); if (currentCal.form[currentCal.field].value!="" && calRE.test(currentCal.form[currentCal.field].value)) { var cd = getDateNumbers(currentCal.form[currentCal.field].value); d=new Date(cd[0],cd[1],cd[2]); cY=cd[0]; cM=cd[1]; dd=cd[2]; } else { cY=d.getFullYear(); cM=d.getMonth(); dd=d.getDate(); } var calendar=calHeader()+calTitle(d)+calBody(d,dd)+calFooter(); if (calWin != null && typeof(calWin.closed)!="undefined" && !calWin.closed) { hasCal=true; calWin.moveTo(winX+calOffsetX,winY+calOffsetY); } if (!hasCal) { if (isIE || isOpera6) { calWin=window.open("","cal","toolbar=0,width="+calWidth+",height="+calHeight+",left="+(winX+calOffsetX)+",top="+(winY+calOffsetY)); } else { calWin=window.open("","cal","toolbar=0,width="+calWidth+",height="+calHeight+",screenx="+(winX+calOffsetX)+",screeny="+(winY+calOffsetY)); } } calWin.document.open(); calWin.document.write(calendar); calWin.document.close(); calWin.focus(); } else { if (currentCal == null) { window.status = "Calendar ["+name+"] not found."; } else if (!currentCal.form) { window.status = "Form ["+currentCal.formName+"] not found."; } else if (!currentCal.form[currentCal.field]) { window.status = "Form Field ["+currentCal.formName+"."+currentCal.field+"] not found."; } if (lastCal != null) { currentCal = lastCal; } } var data=document.getElementById('data_fak').value; var d=data[0]; if(d){ d+=data[1]; } else { d=data[1]; } var d=data[3]; if(d){ d+=data[4]; } else { d=data[4]; } var r=data[6]+data[7]+data[8]+data[9]; document.getElementById('kurs').value=kurs[d][m][r]; } |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Sorki, zapomniałem podmienić d na m, przeoczyłem to. Choć dziwi mnie, że nie skapnąłeś się, że o to chodzi, tym bardziej przy komunikacie o braku definicji m. Spróbuj teraz (poprawiłem ostatni kod JavaScript), powinno śmigać. I jeszcze raz sorki za niedopatrzenie, pisałem w pośpiechu. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Niestety z javascriptu jestem zupełnie zielony... coś jakbym czytał po chińsku
Kod kurs[d][m][r] - bez cudzysłowu -> wywalał błąd: Kod 'kurs[...]' jest pusty lub nie jest obiektem z cudzysłowem Kod document.getElementById('kurs').value='kurs[d][m][r]'; zadziałało połowicznie - w polu kurs wpisał to samo: Kod kurs[d][m][r]
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
A wstawiłeś w sekcji head ten 1. od góry kod, który napisałem?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 111 Pomógł: 10 Dołączył: 16.07.2009 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dobry jesteś, ale to raczej nie to. Ja mam wszędzie 'data_fak' , ale skróciłem na 'data_f' żeby tak ostro nie brzmiało...
Ktoś ma jeszcze jakiś pomysł? |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Zmienną kurs zapisz w postaci klucz jako data (w formacie jaką zwraca Ci kalendarz typu : 2011-01-01) np:
Za include lub na końcu w include daj: (oczywiście w tagach script)
No i wtedy dla funkcji onchange dla inputa do wartości kursu odwołujesz się poprzez
Ten post edytował melkorm 8.02.2011, 17:41:09 -------------------- |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Jedno jest pewne, że muszę się jeszcze duuuuużo nauczyć...
W dokumencie index.php, w sekcji body mam: Dałem <?php json_encode( $kurs ); ?> w pojedyńczy cudzysłów bo wychodził błąd Kursy w pliku kursy.php wyglądają tak
Potem to co przysłałeś (niezmienione - pewnie to błąd) i dalej formularz Jak widać nie mogę sobie poradzić z pobraniem warości kursu, bo to
jest złe, ale próbowałen na różne sposoby i nie mam pomysłu jak to rozwiązać... |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
W 30% to był pseudo kod
![]() Zapoznaj się z: - Funkcje w javascript - zdarzenia w javascript (onchange, onclick itp) i wywoływanie w nich kodu/funkcji javascript - pobieranie wartości elementów w javascript Powinno to Tobie pomóc w analizie tego kodu i podpięcie pod swoje wymagania, na prawdę nie wiele tam trzeba by to chodziło jak chcesz. Ogólnie to wygląda tak: Wybierając datę odpalany jest event onchange (zmiana wartości inputa) która w swojej definicji odpali Twoją zdefiniowaną funkcję która pobierze wartość inputa ( datę ) i wykona wcześniej podany warunek po czym wstawi odpowiednią wartość w inputa do którego chcesz. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 01:56 |