Kezdőoldal » Számítástechnika » Weblapkészítés » Mért nem megy ez a JS kód a...

Csabakka kérdése:

Mért nem megy ez a JS kód a PHP-n belül?

Figyelt kérdés

echo '<script language="javascript">';

echo 'alert("Sikeresen elküdted!")';

echo 'document.getElementById("vege").style.backgroundColor = "red"';

echo '</script>';



2020. okt. 30. 08:47
1 2 3
 11/21 A kérdező kommentje:
hát ez a kérdés, hogy mi volt előbb, mert ez egy form elküldő gombjával van ilyen értelemben összekapcsolva, mint a sikeres elküldés, ami alá echo-val betenném ezt a sort, hogy azonnal váltson pirosra az a p elem, amire fel kell hívni a figyelmet, ilyen értelemben az onload nem jó, mert csak akkor kell bepirosodnia, ha a form el van küldve
2020. okt. 30. 12:18
 12/21 anonim ***** válasza:

Továbbra is azt mondom: amíg nem látszik a teljes forráskód, addig felesleges szájtépés az egész, mert nem értjük meg egymást.

Az a lényeg, hogy a fenti kód mindenképp a beszínezni kívánt <p> után fusson le, különben nem fog működni. Ha ez így történik, és így sem működik, akkor csak az segíthet, ha bemásolod a forráskód érdemi részét.

2020. okt. 30. 12:46
Hasznos számodra ez a válasz?
 13/21 anonim ***** válasza:

Ez így elég gusztustalan, legalább annyit csinálj, hogy

?>

<script language="javascript">

alert("Sikeresen elküdted!");

document.getElementById("vege").style.backgroundColor = "red";

</script>

<?php

ha már nem rakod külön fájlba. Meg alert box-szal nem illik kommunikálni a júzerrel, max debuggolni, de arra is inkább console.log().

2020. okt. 30. 12:52
Hasznos számodra ez a válasz?
 14/21 A kérdező kommentje:
Fölösleges lenne a 200 soros formot idemásolni, a lényeg, hogy a submit gombbal vagy azután kéne elérni azt is, hogy egyik p elem vörösre váltson - ezt így elméletileg hogyan kellene megoldani?
2020. okt. 30. 13:02
 15/21 anonim ***** válasza:

De miért javascripttel? Vagy phpvel állíts be az elemnek egy classot ha elküldte a formot a júzer és validálta a script. Ha mindenképp javascriptet akarsz akkor viszont ajax-szal kellene operálni, mert a csak frontendes validálás nem validálás. De nem értem, hogy miért nem jó pl valami ilyesmi:

...

<input type="submit" name="formSubmitButton">

...

a viewban, form feldolgozás:

<?php

if ($_POST['formSubmitButton']) {

// validáljuk a formot

...

$formErrorMessages = []; // ha nincs hiba

...

$formErrorMessages = array(

'Nem megfelelő email cím formátum.',

'Hiányzó cím',

'Kérlek fogadd el a felhasználási feltételeket'

}


ha van(nak) hibaüzenet(ek) akkor pl form előtti részre kiíratod, ha nem akkor pl

<p>Ez nem lesz piros.</p>

<p<?php if (count($formErrorMessages) < 1) echo ' class="red"'?>>Ez lesz a piros.</p>

<p>Ez sem lesz piros.</p>


Bocs ha syntax error van a kódban, mostanában frontendezek illetve nem próbáltam ki, de itt az alapelv szemléltetése volt a lényeg.

2020. okt. 30. 13:24
Hasznos számodra ez a válasz?
 16/21 anonim ***** válasza:
Az tény, hogy a 200 soros formot felesleges lenne bemásolni, ezért írtam, hogy a "forráskód érdemi részét" másold be. Nem kell ahhoz látni az egészet, hogy kiderüljön, mi a hiba, de ez így önmagában láthatod, hogy kevés. Leírták már előttem, mi a hiba, én is leírtam, az alapján működnie kell. Mivel nálad az alapján sem működik, más lesz a hiba, amihez látni kell mást is. Ennyi.
2020. okt. 30. 13:46
Hasznos számodra ez a válasz?
 17/21 anonim ***** válasza:

ITGuy-al egyetértek, hogy a megoldás alapjáraton teljesen ésszerűtlen, de vonatkoztassunk el ettől. Ez így, ebben a formában működőképes:

<p id="vege">Valamivalami</p>

<?php

echo '<script language="javascript">';

echo 'alert("Sikeresen elküdted!");';

echo 'document.getElementById("vege").style.backgroundColor = "red";';

echo '</script>';

?>


A kód működik, innentől teljesen biztos, hogy az elrendezéssel, vagy a meghívással, vagy a feltételes utasítással, vagy bármi mással van a probléma.

2020. okt. 30. 13:51
Hasznos számodra ez a válasz?
 18/21 A kérdező kommentje:
igen, ez a lényeg, így is van, de nem akar bepirulni, akár a form elé, akár mögé teszem... marad fehér... köszönöm
2020. okt. 30. 16:03
 19/21 A kérdező kommentje:

Szóval a CSS-t is be lehet tenni a php-be:

echo '<style type="text/css">

#vege {

background-color: red;

}

</style>';

Ez működik...

2020. okt. 30. 16:17
 20/21 anonim ***** válasza:

Hallod ez egyre gusztustalanabb, rakd már külön legalább a css meg js fájlokat.

<link rel="stylesheet" href="mystyle.css">

<script src="myScript.js"></script>

2020. okt. 30. 17:44
Hasznos számodra ez a válasz?
1 2 3

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!