-
Migrace z Joomla 1.5, 2.5 a 3.x do nové Joomla 6
Bong ·
- X Online Joomla bar xunil ·
-
Phoca Cart - pluginy dopravy
H13 ·
-
Nový joomlaportal.cz
Linelabcz ·
-
Amanus - nová šablona Astroid frameworku podporující Phoca Cart
H13 ·
- X Claude Code a VS Code - kompromitace xunil ·
-
Phoca Download - verze 6.1.6 vydána
H13 ·
-
Phoca Cart - Booking
H13 ·
Vyřešeno Kde mám chybu?
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
04. lis 2015 11:55 #124331
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
když dám do modulu jen ten příklad
tak se mi taky nic nezobrazí
Code:
<script type="text/javascript">
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.html", function() {
alert('Načteno');
});
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js",
function(response, status, xhr) {
// status - v případě, že nastane chyba, bude mít hodnotu "error"
// xhr - informace o chybě
if(status == "error")
// když nastala chyba
{
alert("Nastala chyba číslo: "+xhr.status+" - "+xhr.statusText);
// xhr.status - číslo chyby
// xhr.statusText - textový popis chyby, třeba error
// Not Found - nenalezeno, Acces denied - přístup odepřen apod.
} else {
alert('Načteno');}
});
</script>
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
04. lis 2015 12:07 #124332
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
i tenhle příklad
mi v consoli napíše Uncaught TypeError: Cannot read property 'click' of null a nereaguje na ten click
Code:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").load("/components/com_lovefactory/models/demo_test.txt", function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
alert("External content loaded successfully!");
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
});
});
</script>
</head>
<body>
<div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div>
<button>Get External Content</button>
</body>
</html>
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
04. lis 2015 13:00 #124334
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
když se to pokouším řešit přímo v testvlevo.php a v něm si načtu
tak se taky formulář neobjeví, což je vlastně logické
Code:
$document = &JFactory::getDocument();
$document->addScript('/components/com_lovefactory/models/testvlevo.js');
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
04. lis 2015 13:39 #124336
od Cony
Odpověď od Cony v tématu Kde mám chybu?
A nemícháte mootools a jQuery? Pokud nahráváte i mootools používejte místo $ jQuery.
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
04. lis 2015 14:59 - 04. lis 2015 15:06 #124339
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
já jsem to asi totálně zamíchal tím, že jsem uvedl ty příklady co jsem zkoušel.
Tak raději od počátku
Prní část proběhne ok a do data mi to z testvlevo.php vrátí hodnoty pro předvyplnění formuláře. a dál v tom mám asi zmatek.
Zavolá se funkce zobrazeno a to
mi do logu vypíše
jen pro úplnost v tom testvlevo.js
je
To znamená mám funkční php, které mi z databáze načte hodnoty pro předvyplnění formuláře a úspěšně je pošle do "data".
pak mám php, které data z formuláře zapíše zpět do databáze.
Jen ten formulář se mi nedaří zobrazit.
Když jsem použil ten document.write, tak vše správně probíhalo, jen se ten formulář vypsal bůhví kde a stránky se staly nefunkční.
Už propadám beznaději a nevím, zda jsem to schopen dopsat.
Opravdu by jste mi za nějaký peníz ten kousek kódu nenapsal?
PS funkce formuloz je momentálně v kódu navíc nic ji nevolá
PS2 netuším co je mootools
pokud tedy napíši, jak doporučujete
už to chybu v consoli nehlásí, ale formulář se nezobrazí
Tak raději od počátku
Code:
<script type="text/javascript">
testajax()
function testajax(){
jQuery.ajax({
url: '/components/com_lovefactory/models/testvlevo.php'
}).done(function(data){
console.log(data);
zobrazform(data);
}).fail(function(){
console.log('Odeslání selhalo');
});
};
function zobrazform(data) {
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
}
function formuloz(formular){
if (document.formular.form4.checked==true){var p3 = "1";} else {var p3 = "0";};
jQuery.ajax({
url: '/components/com_lovefactory/models/lmenutest.php',
data: {d3: p3}
}).done(function(){
console.log('Odeslano');
javascript: document.location.reload ();
}).fail(function(){
console.log('Odeslání selhalo');
});
};
</script>
Zavolá se funkce zobrazeno a to
Code:
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
Code:
Uncaught TypeError: Cannot read property 'load' of null
je
Code:
<form name="form">
<hr size="1" color="#999999" width="90%" />
<input type="checkbox" name="form2" /> <span style="color: #999999;">Skryj moje umístění na mapě</span><br>
<input type="checkbox" name="form3"/> <span style="color: #999999;"><a href="/index.php/cs/my-profile"> Změň svoji pozici na mapě</a></span><br><br>
<hr size="1" color="#999999" width="90%" />
<span style="font-size: 9pt;"> <strong style="color: #999999; background-color:transparent;"><span style="color: #e4e4e4; font-family: Arial;">Jen pro</span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;"> TOP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> nebo </span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;">VIP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> uživatele:</span></strong></span><span style="font-size: 9pt; font-family: 'arial black', 'avant garde';" data-mce-bogus="1"> <span id="_mce_caret" data-mce-bogus="1"><span style="background-color: transparent;" data-mce-bogus="1"></span></span></span>
<input type="checkbox" name="form4"/> <span style="color: #999999;">Skryj vzdálenost</span><br>
<input type="checkbox" name="form5"/> <span style="color: #999999;">Skryj datum přihlášení</span><br>
<input type="checkbox" name="form6"/> <span style="color: #999999;">Skryj koho jsem návštívil</span><br>
<input type="checkbox" name="form7"/> <span style="color: #999999;">Skryj reklamy</span><br>
<a href="javascript:formajax();"><img src="../images/tl_refresh_a.png" ></a>
</form>
<script>
function formajax(form){
if (document.form.form2.checked==true){ var p1 = "1";} else {var p1 = "0";};
if (document.form.form3.checked==true){ var p2 = "1";} else {var p2 = "0";};
if (document.form.form4.checked==true){ var p3 = "1";} else {var p3 = "0";};
if (document.form.form5.checked==true){ var p4 = "1";} else {var p4 = "0";};
if (document.form.form6.checked==true){ var p5 = "1";} else {var p5 = "0";};
if (document.form.form7.checked==true){ var p6 = "1";} else {var p6 = "0";};
jQuery.ajax({
url: '/components/com_lovefactory/models/lmenu.php',
data: {d1: p1, d2: p2,d3: p3, d4: p4, d5: p5, d6: p6}
}).done(function(){
console.log('Odeslano');
javascript: document.location.reload ();
}).fail(function(){
console.log('Odeslání selhalo');
});
}
</script>
pak mám php, které data z formuláře zapíše zpět do databáze.
Jen ten formulář se mi nedaří zobrazit.
Když jsem použil ten document.write, tak vše správně probíhalo, jen se ten formulář vypsal bůhví kde a stránky se staly nefunkční.
Už propadám beznaději a nevím, zda jsem to schopen dopsat.
Opravdu by jste mi za nějaký peníz ten kousek kódu nenapsal?
PS funkce formuloz je momentálně v kódu navíc nic ji nevolá
PS2 netuším co je mootools
pokud tedy napíši, jak doporučujete
Code:
function zobrazform(data) {
jQuery("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
}
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
05. lis 2015 09:10 #124355
od Cony
Odpověď od Cony v tématu Kde mám chybu?
Ježiš to je zase kódu. A element (zřejmě div) s id sem_nacteme na stránkách máte?
Poděkovali: Ernst
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
05. lis 2015 09:47 #124357
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
no samozřejmě, zírám do toho 3 dny nonstop jak husa do flašky a tohle mně nenapadne.
Teď se to zobrazuje a funguje zápis do databáze (to jsem nechal ošetřeno v tom testvlevo.js)
tím pádem z kódu mohu vyhodit celou tu funkci formuloz.
akorát to nezobrazuje české znaky, ale s kódováním si poradím. (musí být UTF8?).
Když do toho javascriptu pošlu ty hodnoty na předvyplnění, mohu ve formuláři použít funkci IF abych udělal vstupní pole zaškrtnuté nebo nezaškrtnuté?
Teď se to zobrazuje a funguje zápis do databáze (to jsem nechal ošetřeno v tom testvlevo.js)
tím pádem z kódu mohu vyhodit celou tu funkci formuloz.
akorát to nezobrazuje české znaky, ale s kódováním si poradím. (musí být UTF8?).
Když do toho javascriptu pošlu ty hodnoty na předvyplnění, mohu ve formuláři použít funkci IF abych udělal vstupní pole zaškrtnuté nebo nezaškrtnuté?
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
05. lis 2015 09:48 - 05. lis 2015 09:57 #124358
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
ano UTF8, čeština opravena
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
05. lis 2015 10:16 #124359
od Cony
Odpověď od Cony v tématu Kde mám chybu?
Té větě moc nerozumím, IF není funkce ale příkaz. určitě jí nemůžete použít ve formuláři. Formulář je HTML, to žádné IF nezná. Můžete jí použít v javaskriptu, a z něj si zaškrtat pole jaká potřebujete, nebo v PHP a formulář už posílat s příznakem checked u jednotlivých polí.ernst napsal: Když do toho javascriptu pošlu ty hodnoty na předvyplnění, mohu ve formuláři použít funkci IF abych udělal vstupní pole zaškrtnuté nebo nezaškrtnuté?
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
05. lis 2015 10:27 - 05. lis 2015 10:35 #124360
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
jasně příkaz, omlouvám se.
ale já na základě poslaných dat musím napsat ve formuláři
jak to tedy ošetřím?
uvažuji takhle správně nebo to jde i jinak?
Nebo můžu definovat formulář i jinak než v html?
nebo v javascriptu mohu napsat document.form.form4.checked=true?
aha mohu, vyzkoušel jsem a funguje to 
Ja to snad díky Vám pochopím
Teď je otázkou zda jsem to tak nemohl udělat už v tom úplně provotním kódu toho menu
ale já na základě poslaných dat musím napsat ve formuláři
Code:
<form name="form">
<input type="checkbox" name="form4"/> <span style="color: #999999;">Skryj vzdálenost</span><br>
nebo
<input type="checkbox" name="form4" checked/> <span style="color: #999999;">Skryj vzdálenost</span><br>
</form>
uvažuji takhle správně nebo to jde i jinak?
Nebo můžu definovat formulář i jinak než v html?
nebo v javascriptu mohu napsat document.form.form4.checked=true?
Ja to snad díky Vám pochopím
Teď je otázkou zda jsem to tak nemohl udělat už v tom úplně provotním kódu toho menu
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
05. lis 2015 10:49 #124361
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
a poslední dotaz.
když použiji
jak ty data v javascriptu přečtu?
už jsem to někde četl, ale nomohu to teď najít
když použiji
Code:
jQuery("#abc").load("/components/com_lovefactory/models/vlevocz.js",data);
už jsem to někde četl, ale nomohu to teď najít
- Ernst
- Autor
- OFFLINE
- Joomla Expert
-
Méně
Více
- Příspěvky: 2380
05. lis 2015 12:24 #124362
od Ernst
Odpověď od Ernst v tématu Kde mám chybu?
Tak po všem, co jsem se zde naučil a vyzkoušel jsem se vrátil k původní variantě a funguje to bezvadně:
Jen jsem proti původnímu doplnil funkci testajax, která načte aktuální data z databáze (vlevonacti.php)
a funkci upravform , která předvyplní formulář těmito načtenými daty:
Každopádně nesmírně děkuji Conymu za jeho obrovskou trpělivost se mnou a za to, že mne zde mnoho naučil.
Bez něj bych to nedal.
Code:
<form name="form">
<hr size="1" color="#999999" width="90%" />
<input type="checkbox" name="form2" /> <span style="color: #999999;">Skryj moje umístění na mapě</span><br>
<input type="checkbox" name="form3"/> <span style="color: #999999;"><a href="/index.php/cs/my-profile"> Změň svoji pozici na mapě</a></span><br><br>
<hr size="1" color="#999999" width="90%" />
<span style="font-size: 9pt;"> <strong style="color: #999999; background-color:transparent;"><span style="color: #e4e4e4; font-family: Arial;">Jen pro</span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;"> TOP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> nebo </span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;">VIP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> uživatele:</span></strong></span><span style="font-size: 9pt; font-family: 'arial black', 'avant garde';" data-mce-bogus="1"> <span id="_mce_caret" data-mce-bogus="1"><span style="background-color: transparent;" data-mce-bogus="1"></span></span></span>
<input type="checkbox" name="form4"/> <span style="color: #999999;">Skryj vzdálenost</span><br>
<input type="checkbox" name="form5"/> <span style="color: #999999;">Skryj datum přihlášení</span><br>
<input type="checkbox" name="form6"/> <span style="color: #999999;">Skryj koho jsem návštívil</span><br>
<input type="checkbox" name="form7"/> <span style="color: #999999;">Skryj reklamy</span><br>
<a href="javascript:formajax();"><img src="../images/tl_refresh_a.png" ></a>
</form>
<script>
testajax()
function testajax(){
jQuery.ajax({
url: '/components/com_lovefactory/models/vlevonacti.php'
}).done(function(data){
console.log(data);
upravform(data);
}).fail(function(){
console.log('Odeslání selhalo');
});
};
function upravform(data){
var s1 = data.substr(0,1);
var s2 = data.substr(1,1);
var s3 = data.substr(2,1);
var s4 = data.substr(3,1);
var s5 = data.substr(4,1);
var s6 = data.substr(5,1);
if (s1==1) {document.form.form2.checked=true};
if (s2==1) {document.form.form3.checked=true};
if (s3==1) {document.form.form4.checked=true};
if (s4==1) {document.form.form5.checked=true};
if (s5==1) {document.form.form6.checked=true};
if (s6==1) {document.form.form7.checked=true};
}
function formajax(form){
if (document.form.form2.checked==true){ var p1 = "1";} else {var p1 = "0";};
if (document.form.form3.checked==true){ var p2 = "1";} else {var p2 = "0";};
if (document.form.form4.checked==true){ var p3 = "1";} else {var p3 = "0";};
if (document.form.form5.checked==true){ var p4 = "1";} else {var p4 = "0";};
if (document.form.form6.checked==true){ var p5 = "1";} else {var p5 = "0";};
if (document.form.form7.checked==true){ var p6 = "1";} else {var p6 = "0";};
jQuery.ajax({
url: '/components/com_lovefactory/models/lmenu.php',
data: {d1: p1, d2: p2,d3: p3, d4: p4, d5: p5, d6: p6}
}).done(function(){
console.log('Odeslano');
javascript: document.location.reload ();
}).fail(function(){
console.log('Odeslání selhalo');
});
}
</script>
Jen jsem proti původnímu doplnil funkci testajax, která načte aktuální data z databáze (vlevonacti.php)
Code:
testajax()
function testajax(){
jQuery.ajax({
url: '/components/com_lovefactory/models/vlevonacti.php'
}).done(function(data){
console.log(data);
upravform(data);
}).fail(function(){
console.log('Odeslání selhalo');
});
};
a funkci upravform , která předvyplní formulář těmito načtenými daty:
Code:
function upravform(data){
var s1 = data.substr(0,1);
var s2 = data.substr(1,1);
var s3 = data.substr(2,1);
var s4 = data.substr(3,1);
var s5 = data.substr(4,1);
var s6 = data.substr(5,1);
if (s1==1) {document.form.form2.checked=true};
if (s2==1) {document.form.form3.checked=true};
if (s3==1) {document.form.form4.checked=true};
if (s4==1) {document.form.form5.checked=true};
if (s5==1) {document.form.form6.checked=true};
if (s6==1) {document.form.form7.checked=true};
}
Každopádně nesmírně děkuji Conymu za jeho obrovskou trpělivost se mnou a za to, že mne zde mnoho naučil.
Bez něj bych to nedal.
Vygenerováno za 0.104 sekund