Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> onclick coś nie działa
Majcon
post 17.04.2013, 12:37:42
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 27.11.2012
Skąd: Sieradz

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


Kod
<script type="text/javascript">
function sprfor(aform)
{
if(aform.data.value==""){
alert("Podaj date");
return false;
}else{
<?php
$tekst = "Jakiś tekst";
?>
document.getElementById('log').innerHTML = <?php echo $tekst; ?>;
return true;
}
}
</script>
<center>
<form action="" method="POST">
<b>Dzien:</b><br>
<select name="data">
<optgroup label="data">
<option></option>
<? echo $eee;?>
</optgroup>
</select>
<br><br>
<INPUT TYPE="button" VALUE='ddd' onClick="sprfor(this);"></input></form>


ma ktoś może pomysł dlaczego to nie działa ? chodzi o to że po kliknieciu w przycisk ddd żeby się wykonała funkcja sprfor która sprawdza czy formularz został dobrze wypełniony jeżeli tak to wyświetli tekst który jest pod zmienną $tekst ;p

zapomniałem dodać aktualnie po kliknięciu nic się nie dzieje ;D
Go to the top of the page
+Quote Post
sajegib
post 17.04.2013, 12:39:19
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 59
Dołączył: 16.01.2013

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


Spróbuj zmienić (this) na konkretny element
Go to the top of the page
+Quote Post
Majcon
post 17.04.2013, 12:47:51
Post #3





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 27.11.2012
Skąd: Sieradz

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


czyli co tam dac bo ja trochę początkujący w javascript jestem ;D
Go to the top of the page
+Quote Post
kamil4u
post 17.04.2013, 15:05:10
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


Po prostu mieszasz PHP z JS w nieumiejętny sposób. Sprawdź sobie w źródle strony jaki kod Ci wyszedł.

Kod
document.getElementById('log').innerHTML = <?php echo $tekst; ?>;

W wyniku będzie brakowało "

Drugi błąd:
Kod
onClick="sprfor(this);

this wskazuje na ten konkretny element. Tobie chodzi o formularz, czyli daj this.form

Sprawdzaj konsolę błędów JS.


--------------------
Go to the top of the page
+Quote Post
Majcon
post 17.04.2013, 15:07:01
Post #5





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 27.11.2012
Skąd: Sieradz

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


Albo mógłby mi ktoś pokazać prostą przykład gdzie po kliknięciu wywoła się jakaś funkcja która zwróci w alert tekst1 gdy pole nie zostało wypełnione i tekst2 gdy wypełnione bez przeladowywania całej strony
Go to the top of the page
+Quote Post
kamil4u
post 17.04.2013, 16:51:59
Post #6





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


Kod
<input id="pole">
<input type="button" onclick="test();" value="Sprawdzamy!">

<script>
function test(){
if( document.getElementById('pole').value == "" ){
   alert("Nie ma nic")
} else {
   alert("Coś jest");
}
}
</script>


--------------------
Go to the top of the page
+Quote Post
Majcon
post 17.04.2013, 17:30:31
Post #7





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 27.11.2012
Skąd: Sieradz

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


ok.dzięki
tylko teraz coś takiego po kliknieciu sprawdz i gdy jest coś w polu żeby wykonało się to
Kod
$data = $_POST['data'];
if(!empty($data)) {
$czas = strtotime($data);
$czas1 = $czas+86400;
$sel = $db->query("SELECT * FROM `ggczat_log` WHERE `kanal` = '{$canal}' AND `last` > '{$czas}' AND `last` < '{$czas1}' ORDER BY `last` ASC");
if($sel->num_rows != 0){
while($row = $sel->fetch_assoc())
{
$czas = date("d.m.Y G:i:s", $row['last']);
$log .= "<br><b>".htmlspecialchars($row['nick'])."</b> {{$czas}} ".htmlspecialchars($row['log']);
}
}else{
$log = "<font color='red'><b>Brak logów</b></font>";
}
}
ale żeby to się wykonało bez przeladowywania całej strony da radę to jakoś ?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:15