• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Ładowanie "reCAPTCHA" z JS

0 głosów
192 wizyt
pytanie zadane 29 września 2018 w HTML i CSS przez Cichy799 Nowicjusz (200 p.)

WItam wszystkich!

Jestem nowy tutaj jak i w programowaniu, uczę się niecały miesiąc, zacząłem od oglądania tutoriali Pana M.Z. i staram się robić rzeczy "po swojemu" dla lepszej wprawy. No i myślę że natrafiłem na zjawisko ciężko zrozumiałe dla mnie. Także proszę Was wszystkich o wszelaką pomoc w rzeczy dość trywialnej dla Waszego grona. Oto problem:

Jestem na etapie programowania rejestracji w PHP i wpadłem na pomysł na stronie głównej, iż zrobie link o nazwie rejestracja poktórym dzięki funcji innerHTML z JavaScriptu nadpiszę jeden div i tam dam pola do rejestracji. Wszystko poszło dość dobrze poza jednym, reCAPTCHA, dostałem gotowego diva do wklejenia na strone HTML i po wklejeniu jej reCAPTCHA oczywiście działa. Ale gdy wrzucam go do JS nagle znika. 

Oto div wygenerowany przez reCAPTCHA

<div class="g-recaptcha" data-sitekey="6LcIw3IUAAAAAGeacTqiua1RYNpOor_7E6V0u80D"></div>

oczywiście uprzednio dodałem wersję do <head>, a oto funkcja podmieniająca diva w JS

	function registerjs()
	{
		var plikregister =   	"<span id=\"boxjs\" >"+ 
										"<div class=\"centerreg\" ><span class=\"pointerjs\" onclick=\"loginjs()\"><b>Logowanie</b></span>/<span class=\"bigtitle\"  >Rejestracja</span>" +
										"<div id=\"loginbox\" style=\"height: 400px;\">"+
										"<form method=\"post\">"+
										"<input class=\"logreg\" type='text' name='nick' placeholder='Podaj nick do gry: ' onfocus=\"this.placeholder=''\" onblur=\"this.placeholder='Podaj nick do gry: '\" /><br />"+
										"<input class=\"logreg\" type=\"password\" name=\"haslo1\" placeholder=\"Hasło:\" onfocus=\"this.placeholder=''\" onblur=\"this.placeholder='Hasło:'\" /><br />"+
										"<input class=\"logreg\" type=\"password\" name=\"haslo2\" placeholder=\"Powtórz hasło:\" onfocus=\"this.placeholder=''\" onblur=\"this.placeholder='Powtórz hasło:'\" /><br />"+
										"<input class=\"logreg\" type=\"text\" name=\"email\" placeholder=\"Email:\" onfocus=\"this.placeholder=''\" onblur=\"this.placeholder='Email:'\" /><br />"+
										"<label><input type=\"checkbox\" name=\"regulamin\" >Akceptuję <a href=\"regulamin\" title=\"regulamin\" target=\"_BLANK\" class=\"black2\" >regulamin</a></label><br />"+
										"<div class="+"g-recaptcha"+" data-sitekey="+"6LcIw3IUAAAAAGeacTqiua1RYNpOor_7E6V0u80D"+"></div><br />"+
										"<input class=\"loginto\" type=\"submit\" value=\"Zarejestruj się\" /></span></div>";

		
		document.getElementById("boxjs").innerHTML = plikregister;
	}

niestety na chwilę obecną tylko tak potrafię scalić linijki kodu w JS. 

podam również HMTL co dokładnie podmienia ( podmieniam diva logującego się z rejestracją)

				<div id="registerboxjs" >
					<div id="log" >
						<span id="boxjs" >
							<span class="bigtitle" >Logowanie</span>/<span class="pointerjs" onclick="registerjs()" ><b>Rejestracja</b></span>
							<div id="loginbox" >
								<form action="login" method="post" >
								<input class="logreg" type="text" name="login" placeholder="Login" onfocus="this.placeholder=''" onblur="this.placeholder='Login'" />
								<input class="logreg" type="password" name="haslo" placeholder="Hasło" onfocus="this.placeholder=''" onblur="this.placeholder='Hasło'" />
								<input class="loginto" type="submit" value="Zaloguj się" />
						</span>
<?php
	if(isset($_SESSION['blad']))
	echo $_SESSION['blad'];
?>
						</div>								
						</form>
					</div>
					<aside>

Oczywiście są to wycinki, wszystkie divy się zgadzają, błędu nie ma, problem w tym że reCAPTCHA też nie ma...

 

Czy bylibyście na tyle uprzejmi by doradzić/poradzić na zaistniałą sytuację? 

 

Z góry dziękuję za pomoc

Mariusz

1 odpowiedź

0 głosów
odpowiedź 30 września 2018 przez Grzegorz :> Dyskutant (8,050 p.)

Nie wiem po co te plusy w linijce z tą reCaptchą. Spróbuj to zapisać w ten sposób:

'<div class="g-recaptcha" data-sitekey="6LcIw3IUAAAAAGeacTqiua1RYNpOor_7E6V0u80D"></div><br />'

PS. Zamiast używać innerHTML do tworzenia elementów w divie polecam document.createElement :>

komentarz 1 października 2018 przez Cichy799 Nowicjusz (200 p.)
Dziękuję za wpisa, spróbowałem to ująć w apostrofach, lecz efekt ten sam, jakby ten div nie istniał, wychodzi na to, że jeszcze jest to zbyt skomplikowane dla mnie więc wstrzymam się na tą chwilę z tym rozwiązaniem, poczytam przy okazji o createElement i wtedy do tego wrócę:)

 

Jeszcze raz dzięki za zainteresowanie!

Podobne pytania

0 głosów
1 odpowiedź 747 wizyt
pytanie zadane 24 grudnia 2020 w JavaScript przez hihijsonel Obywatel (1,250 p.)
0 głosów
2 odpowiedzi 1,523 wizyt
pytanie zadane 13 października 2019 w Sieci komputerowe, internet przez devloop Nowicjusz (190 p.)
0 głosów
1 odpowiedź 342 wizyt
pytanie zadane 22 września 2018 w JavaScript przez arczix07 Nowicjusz (220 p.)

93,631 zapytań

142,553 odpowiedzi

323,056 komentarzy

63,137 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2416p. - dia-Chann
  2. 2390p. - DziarnowskiJ
  3. 2317p. - raydeal
  4. 2300p. - Adrian Wieprzkowicz
  5. 2243p. - rucin93
  6. 2242p. - Łukasz Piwowar
  7. 2222p. - CC PL
  8. 2117p. - Łukasz Eckert
  9. 2082p. - Michal Drewniak
  10. 1957p. - Maurycy W
  11. 1885p. - robwarsz
  12. 1811p. - rafalszastok
  13. 1600p. - Rafał Trójniak
  14. 1588p. - Tomasz Bielak
  15. 1377p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...