![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 24.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
potrzebuje zrobic cos podobnego jak na tej stronie: http://ustaw.orange.pl Na jednej stronie musze miec dwie listy wyboru (SELECT) z tymi samymi wartościami, z tym, że jak w pierwszej liście wybiorę wartość "a" to chciałbym żeby automatycznie w drugiej liście ona "znikła" i nie była możliwa do wyboru. Np Załóży, że SELECT1 wygląda tak: a b c d SELECT2 tak: a b c d Wybieram z SELECT1 opcje "a" i w SELECT2 mam juz dostępne tylko opcje: b c d Jak to zrobic?? pomocy.... ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 11.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ma to sie dziac na tej samej stronie, czy select2 jest na innej?
Zaraz lece do lekarza ale jak wroce to postaram sie cos skodzic:) ![]() Ten post edytował w3b 11.09.2006, 13:35:55 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 24.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
SELECT2 jest na tej samej stronie co SELECT1
Kod <form action="combo.php" method="POST"> Z <select name"zrodlo" style="width: 150px;"> <option value=1>Warszawa</option> <option>Krakow</option> <option>Lodz</option> </select> do <select name"cel" style="width: 150px;"> <option value=1>Warszawa</option> <option>Krakow</option> <option>Lodz</option> </select> <input type="submit" value="Pokaz trase"> </form> Tylko, że ten kod MA WADE! a mianowicie mozna wybrać w obu SELECT'ach np "Warszawa", wg tego co mam zaplanowane zrobic będzie mi pokazywlo trase z Warszawy do Warszawy - czyli bezsensu... Chciałbym takich sytuacji uniknąć i dlatego w drugim selekcie musi zniknąć ta opcja, ktora zostala wybrana w pierwszym (i na odwrót). Wykombinowałem jak to zrobić, ale w delphi - niestety nie potrafie przetlumaczyc tego na php:( Kod z delphi nizej Kod unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) ComboBox1: TComboBox; ComboBox2: TComboBox; Button1: TButton; Label1: TLabel; procedure ComboBox1Change(Sender: TObject); procedure Button1Click(Sender: TObject); procedure ComboBox2Change(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; x,y,z: string; l,k: integer; implementation {$R *.dfm} procedure TForm1.ComboBox1Change(Sender: TObject); begin If x<>'' then combobox2.Items.Insert(l,x); if combobox1.Text='Warszawa' then begin combobox2.Items.Delete(0); x:='Warszawa'; l:=0; end; if combobox1.Text='Krakow' then begin combobox2.Items.Delete(1); x:='Krakow'; l:=1; end; if combobox1.Text='Lodz' then begin combobox2.Items.Delete(2); x:='Lodz'; l:=2; end; end; procedure TForm1.ComboBox2Change(Sender: TObject); begin If z<>'' then combobox1.Items.Insert(k,z); if combobox2.Text='Warszawa' then begin combobox1.Items.Delete(0); z:='Warszawa'; k:=0; end; if combobox2.Text='Krakow' then begin combobox1.Items.Delete(1); z:='Krakow'; k:=1; end; if combobox2.Text='Lodz' then begin combobox1.Items.Delete(2); z:='Lodz'; k:=2; end; end; procedure TForm1.Button1Click(Sender: TObject); begin y:=combobox1.Text+combobox2.Text; label1.Caption:=y; end; end. pomoże ktos....? ![]() Ten post edytował roman_g 11.09.2006, 14:03:27 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 252 Pomógł: 2 Dołączył: 4.12.2004 Skąd: Skierniewice Ostrzeżenie: (10%) ![]() ![]() |
Ok dla testów napisałem ci taki kod korzystający z bazy danych, ajaxa i php. Może ci się przyda a jak nie to chociaż popatrz jak działa, może wyciagniesz jakieś wnioski:
Pliki: index.php - Główny plik blokuj.php - Plik odpowiedzialny za generowanie drugiej listy, to z nim się łączymy za pomocą ajaxa polacz_z_baza.php - Parametry do połączenia z bazą. index.php
blokuj.php
polacz_z_baza.php
i baza danych, a właściwie tabela przechowująca nazwy miast miasta.sql
no i do tego będzie potrzebna ci jeszcze biblioteka advAJAX autorstwa Anakina, aby włączyć funkcjonalność ajaxa. Wszystkie potrzebne pliki leżą tutaj Forum pododawało znaki / przed cudzysłowiami więc trzeba poprawić, a pliku .rar jest wszystko ok. Sprawdzałem na IE 6.0 i FF 1.5.0.6 -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 22.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 22.06.2025 - 10:26 |