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%)
-----


Kod
if(document.getElementById('data_max').value!="")alert("data s się załadowała");


coś takiego nie zadziała.

Zmienną mam zadeklarowaną gdzieś indziej - ten kod dałem w uproszeniu, ale masz racje tu zapomniałem zadeklarować tej zmiennej .

Deklaracja globalna też nic nie da.


kod jest oczywiście w uproszeniu bo muszę tak naprawdę przekazać te dane do kalendarza.

Zobacz sam :
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">    

    if(document.getElementById('data_max').value!=""){
    
    alert("data s się załadowała");
    }
          </script>
    
    
  </head>
</head>
<body>


<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>

<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>


W tym czasie jak sprawdzam to pole jest puste. Więc jak ma się pokazać alert ?





Dane są przesyłane asynchronicznie i tu należy szukać rozwiązania.

Cały kod kalendarza widać jak na dłoni . Jak więc mam w nim przeładować asynchronicznie zakres dat ?

każda zmiana onselect lub onload wywołuje funkcję z nowym zakresem dat w zależności od tego w jakiej pozycji jest select . Te dane trafiają w te pola.

Kalendarz ich nie uwzględnia przy uruchamianiu w zakresie dat .

(IMG:style_emoticons/default/arrowheadsmiley.png)



Ten post edytował fiasko 4.02.2011, 02:04:18
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: 8.10.2025 - 19:30