Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][JavaScript]Select + php
Forum PHP.pl > Forum > Przedszkole
sniper
Siema
Przejdę do rzeczy:

  1. <script type="text/javascript">
  2. function odczytanie(wartosc) {
  3. document.getElementById("wartosc_k").innerHTML = wartosc;
  4. }
  5.  
  6. </script>  
  7.  
  8. <select name="bg" onChange="odczytanie(this.value);">
  9. <option value="">---</option>
  10. <option value="admin">Admin</option>
  11. </select>
  12. <body onLoad="odczytanie()"><br />
  13. <?
  14.  
  15. $cos = '<span id="wartosc_k"></span>';
  16. echo $cos;
  17.  
  18. $table = new [url="http://pl.php.net/Table"]Table[/url](array(
  19.  "database"  => array("whereby" => "$cos"), /* Chciałbym by po wybraniu jakiejś opcji w select, skrypt odświeżył się z ową zmienną. .*/
  20.      
  21. ));
  22.  
  23. ?>
Pawel_W
nie czaje za bardzo...

jeśli chcesz po zmianie pobrać coś z php to zrób to za pomocą ajaxa lub
  1. <select onchange="window.location.href='jakis_adres.php?jakas_zmienna='+this.value">
  2. (...)
skowron-line
@sniper zadaj pytanie bo z kodu nic nie wyniika.
sniper
nie no patrz:

mam kod w js któy pobieran to co wybrałem w select, np: wartość admin

Dobra potem ją ładnie wyświetla dynamicznie. Lecz w skrypcie już nie gdy wstawię w tablicy..
To wiadome że skrypt sam z nową zmienną się nie odświeży, a więc chodzi mi o małe odświeżenie skryptu z tą wybraną zmienną.


Select->wartość->js->zmienna->skrypt


Mam nadzieję że zrozumiale napisałem :/
skowron-line
Możesz sobie tą zmienna przesłać _GET i wtedy odczytać. Czyli w onChange dać window.location lub inne.
sniper
a nieda się bez geta? np za pomocą samego js z użyciem div czy coś..
np if w js jeśli się wybierze z select coś to spełnia warunek i ... no nie wiem niemam sensownych pomysłów :S
skowron-line
Jeżeli to coś to jest link
Kod
<a href="index.php?id='. $cos .'">a</a>

To można to zrobić odwołując się do tego elementu i zmieniając mu href.
Gelio
Możesz użyć coś takiego:
  1. function zmien()
  2. {
  3. var element = document.getElementById('wybieranie');
  4. if(element.value == "admin")
  5. document.getElementById('info').innerHTML = "To jest admin...";
  6. else if(element.value == "user")
  7. document.getElementById('info').innerHTML = "Użytkownik";
  8. };
  9. </head>
  10.  
  11. <select id="wybieranie" onchange="zmien()">
  12. <option value="admin">Admin</option>
  13. <option value="user">User</option>
  14. </select><br />
  15. Informacje:<br />
  16. <div id="info">Tu pojawią się informacje jeżeli wybierzesz coś z listy wyżej</div>
  17. </body>
  18. </html>

Powinno działać, ale nie wiem, czy o to Ci chodziło.

Pozdrawiam,
Gelio

@Pawel_W
On miał to w PHP, a chciał dynamicznie, więc zrobiłem mu w JS.
Pawel_W
on mial juz cos w tym stylu... mysle, ze chodzi mu o cos innego
sniper
Gelio dzięki
ale jeśli mam 10 opcji..
to plik by był trochę długi. :/
Pawel_W
  1. function zmien()
  2. {
  3. var v = document.getElementById('wybieranie').value;
  4. var obj = document.getElementById('info');
  5. switch (v){
  6. case 'admin':
  7. obj.innerHTML = "To jest admin...";
  8. break;
  9. case 'user':
  10. obj.innerHTML = "Użytkownik";
  11. break;
  12. }
  13. };
  14. </head>
  15.  
  16. <select id="wybieranie" onchange="zmien()">
  17. <option value="admin">Admin</option>
  18. <option value="user">User</option>
  19. </select><br />
  20. Informacje:<br />
  21. <div id="info">Tu pojawią się informacje jeżeli wybierzesz coś z listy wyżej</div>
  22. </body>
  23. </html>


bardziej chyba nie skrócisz
Pr0100
sniper chodzi Ci o AJAX'a?
sniper
obojętnie może być js i ajax.
teraz szukam rozwiązania w google sciana.gif
zegarek84
Cytat(sniper @ 7.07.2009, 17:24:53 ) *
Gelio dzięki
ale jeśli mam 10 opcji..
to plik by był trochę długi. :/

ale co chcesz uzyskać?? - wyświetlić value z option?? - wyświetlić tekst opisujący daną wartość?? - czy wyświetlić jeszcze inną domyślną wartość jaką miałby w pamięci skrypt js [wtedy najwygodniej skożystać z obiektów json które są naturalne dla js i są też odpowiednikiem tablicy asocjacyjnej z php...]?

przykład dla wyświetlania wybranego value - tu nie ważne ile tychopcji będzie:
  1. function zmien($wybrana_wartosc)
  2. {document.getElementById('info').innerHTML = $wybrana_wartosc;}
  3. </head>
  4. <select id="wybieranie" onchange="zmien(this.value)">
  5. <option value="...">...</option>
  6. <option value="admin">Admin</option>
  7. <option value="user">User</option>
  8. </select><br />
  9. Informacje:<br />
  10. <div id="info">Tu pojawią się informacje jeżeli wybierzesz coś z listy wyżej</div>
  11. </body>
  12. </html>

wiem - może też Ci chodziło o to żeby jakaś wartość była domyślnie zaznaczona?? - ale skąd to mamy wiedzieć skoro słąbo to opisałeśquestionmark.gif..
skowron-line
Albo tablica
  1. var users = new Array();
  2. users[ 'admin' ] = 'To jest Admin';
  3. users[ 'user' ] = 'To jest User';
  4. users[ 'inny' ] = 'On jest inny';
zegarek84
nie w js ;p - tablice asocjacyjne są tylko jako obiekty...
jeśli już to:
Kod
var users = {};
users[ 'admin' ] = 'To jest Admin';
users[ 'user' ] = 'To jest User';
users[ 'inny' ] = 'On jest inny';

lub:
Kod
var users = {
admin : 'To jest Admin',
user : 'To jest User',
inny : 'On jest inny'
};
sniper
a ja myślę nad:
  1. <?php
  2. <script type="text/javascript">
  3. function odczytanie(wartosc) {
  4. document.getElementById("wartosc_k").innerHTML = wartosc;
  5. }
  6. // Tutaj dodać if - jeśli ktoś wybrał coś z select warunek odświeżył skrypt z aktualnie wybraną opcją.
  7. </script>
  8. ?>

tylko coś nie wychodzi
zegarek84
ale dokłądniej to nad czym myslisz - przecież dokłądnie to co teraz napisałeś napisałem 3 posty wyżej
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.