Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Przekazanie wartości zmiennej po za funkcję., HELP
fiasko
post
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 1
Dołączył: 1.06.2010

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


Póki co nikt mi nie pomógł


Mam problem z przekazaniem dalej wartości funkcji laduj, które to trafiają do dwóch pól o identyfikatorach data_min i data_max. Po wybraniu opcji w select dane ładują się do tych inputów . Następnie powinny trafić do zmiennej data_s . Czemu mi to nie działa ?

Kod
  <script type="text/javascript">    
        
      
data_s = document.forms["kontener"].elements["data_max"].value;
if (data_s !=  null ){
alert("data s się załadowała");

}

    </script>






Kod
</form>
</div>
<form id="kontener" action="<?$_SERVER[PHP_SELF]?>" method="post">
<input type="text" id="data_min" name="data_min" value=""/>
<input type="text" id="data_max" name="data_max" value=""/>
</form>



<form action="<?$_SERVER[PHP_SELF]?>" method="post">
<select id="btn2" name="dane1" onChange="loaduj( '2011, 01, 01', '2011, 01, 31');">
<option value="10">10</option>
<option value="20">20</option>
<option value="30">30</option>
</select>

</form>


<script type="text/javascript">

function loaduj(data_min , data_max){

document.forms["kontener"].elements["data_min"].value = data_min;
document.forms["kontener"].elements["data_max"].value = data_max;
}
</script>


Ten post edytował fiasko 3.02.2011, 17:06:26
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
fiasko
post
Post #2





Grupa: Zarejestrowani
Postów: 243
Pomógł: 1
Dołączył: 1.06.2010

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


Ah . Nie wiesz w tym rzecz . U mnie dane są przesyłane asynchronicznie . W momencie wywołania zmiany on change odświeżane są dane przez Ajax. Czyli idzie zapytanie do bazy o nowy zakres dat. Zobacz w kod tu.

Kod
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta>




      <script type="text/javascript">    

    $(document).ready(function() {
            $("#btn2").change(function () {
            var zakres_min = '';
            var zakres_max = '';
                  zakres_min = new Date($("#data_min").val());
                zakres_max = new Date($("#data_max").val());
                alert("zakres min "+zakres_min+" ||| zakres max "+zakres_max);


    }).change();
            });
            
          </script>
    
    
  </head>
</head>
<body>


<form action="<?$_SERVER[PHP_SELF]?>" method="post">
<select id="btn2" name="dane1" onChange="loaduj( '2011, 01, 01', '2011, 01, 31');"> /*Tu tak naprawdę nie mam funkcji laduj tylko funkcja zapytaj() ale mniej więcej taki model zachowania trzeba sobie wyobrazić dla funkcji zapytaj.
Po wywolaniu funkcji zapytaj dane zwracane  w ajax i na koniec wywoływana jest funkcja loaduj( 'tu jest zmienna z nową datą', 'tu jest zmienna' z nową datą)  z nowym zkresem dat. Problem w tym , że, zdarzenie wywołuję  w jquery po zmianie opcji select btn2 i idzie ono natychmiast. Zanim dostanę dane to jquery w tym czasie kończy działanie i nic nie otrzymuje.  Gdybym mógł w jquery wykryć zmianę pola input byłoby po sprawie.*/

<option value="10">10</option>
<option value="20">20</option>
<option value="30">30</option>
</select>

</form>


<script type="text/javascript">

function loaduj(data_min , data_max){

document.forms["kontener"].elements["data_min"].value = data_min;
document.forms["kontener"].elements["data_max"].value = data_max;
}
</script>

<form id="kontener" action="<?$_SERVER[PHP_SELF]?>" method="post">
<input type="text" id="data_min" name="data_min" value=""/>
<input type="text" id="data_max" name="data_max" value=""/>
</form>

</body>
</html>


Ten post edytował fiasko 4.02.2011, 01:14:59
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 15:35