Vermeld in iedere vraag duidelijk:
- De versie van Joomla! 3.X die je gebruikt
- De volledige url van je website indien mogelijk.
- De versie van de extensie waar de vraag over gaat.
Aanpassen JHTML select.genericlist met onchange
Aanpassen JHTML select.genericlist met onchange
18 jul 2016 17:51 - 18 jul 2016 17:53
Op het Virtuemart Forum vond ik informatie terug om een Custom Field aan te maken met opgave van verschillende varianten van virtuemart artikelen. Deze plugin heb ik geïnstalleerd en heb enkele kleine aanpassingen gemaakt zodat dit voor mij bruikbaar is.
Informatie over dit topic vind je hier
Hoe dit momenteel in gebruik is op onze site vind je hier .
Hierbij een voorbeeld hoe de parameters kunnen zijn :
Wit 1 lt@10
Wit 2 lt@18
Gekleurd 1 lt@12
Gekleurd 2 lt@20
Om één van de laatste struikelblokken te kunnen nemen om onze webshop af te werken zou ik op basis van de selectie die de gebruiker hiervoor maakt een custom veld 'Kleur' willen laten tonen. Ik heb hiervoor dus een customveld 'Kleur aangemaakt' welk ik bij de VM artikelen ga toevoegen waar dit nodig zal zijn. Als het woordje 'Wit' voorkomt in de selectie die de gebruiker gemaakt heeft dient het customveld 'Kleur' getoond te worden anders niet.
In mijn huidige webshop die werkt onder Joomla 2.5 heb ik dit destijds opgelost met BreezingForms. Zij bieden echter geen aangepaste versie meer voor Virtuemart 3.X waardoor ik alternatieven moet zoeken.
Na wat experimenteer werk ben ik wel zover dat ik hiervoor de functie onchange dien toe te voegen in de code waar de select.genericlist gecreëerd wordt. Momenteel heb ik dit als volgt aangepast :
Zoals je ziet bij de onchange staat alert(1). Dit enkel maar bij wijze van test waardoor je kan zien dat als er een selectie gemaakt wordt door de gebruiker er een melding verschijnt op het scherm van alert(1). Er moet dus wellicht een functie gecreërd worden die aangeroepen wordt vanuit deze regel.
Ik wil gerust zelf probereren uit te zoeken hoe hiervoor één en ander geregeld moet worden maar heb het gevoel dat ik nu vast zit.
Kan je eventueel opgeven waar ik deze functie dien toe te voegen en hoe dit er ongeveer kan uitzien.
Alvast bedankt.
Informatie over dit topic vind je hier
Hoe dit momenteel in gebruik is op onze site vind je hier .
Hierbij een voorbeeld hoe de parameters kunnen zijn :
Wit 1 lt@10
Wit 2 lt@18
Gekleurd 1 lt@12
Gekleurd 2 lt@20
Om één van de laatste struikelblokken te kunnen nemen om onze webshop af te werken zou ik op basis van de selectie die de gebruiker hiervoor maakt een custom veld 'Kleur' willen laten tonen. Ik heb hiervoor dus een customveld 'Kleur aangemaakt' welk ik bij de VM artikelen ga toevoegen waar dit nodig zal zijn. Als het woordje 'Wit' voorkomt in de selectie die de gebruiker gemaakt heeft dient het customveld 'Kleur' getoond te worden anders niet.
In mijn huidige webshop die werkt onder Joomla 2.5 heb ik dit destijds opgelost met BreezingForms. Zij bieden echter geen aangepaste versie meer voor Virtuemart 3.X waardoor ik alternatieven moet zoeken.
Na wat experimenteer werk ben ik wel zover dat ik hiervoor de functie onchange dien toe te voegen in de code waar de select.genericlist gecreëerd wordt. Momenteel heb ik dit als volgt aangepast :
Code:
$html = JHTML::_('select.genericlist', $selects,'customProductData['.$product->virtuemart_product_id.']['.$params->virtuemart_custom_id.']['.$params->virtuemart_customfield_id .'][custom_qvariant]','class=customqvariant onchange=alert(1)','value','text',$selects[0],false,true);
Zoals je ziet bij de onchange staat alert(1). Dit enkel maar bij wijze van test waardoor je kan zien dat als er een selectie gemaakt wordt door de gebruiker er een melding verschijnt op het scherm van alert(1). Er moet dus wellicht een functie gecreërd worden die aangeroepen wordt vanuit deze regel.
Ik wil gerust zelf probereren uit te zoeken hoe hiervoor één en ander geregeld moet worden maar heb het gevoel dat ik nu vast zit.
Kan je eventueel opgeven waar ik deze functie dien toe te voegen en hoe dit er ongeveer kan uitzien.
Alvast bedankt.
Laatst bewerkt 18 jul 2016 17:53 door Donamd.
Discussie gesloten.
- Donamd
-
Heeft onderwerp gestart
- Regelmatige bezoeker van Joomla!NL
-
- Berichten: 269
Aanpassen JHTML select.genericlist met onchange
19 jul 2016 15:38 - 19 jul 2016 15:39
Ik blijf het internet afzoeken om een voorbeeld te vinden hoe dit dient opgelost te worden.
Ik vermoed dat dit zeker geen onmogelijkheid is, alleen mijn kennis van Php niet voldoende is.
Wel wil ik hieruit leren maar vind niet het juiste pad.
Op deze link vind ik ook een deel terug dat vergelijkbaar is met mijn vraag. Alleen de vraag is hoe en waar wordt de code van 'YOURFUNCTION' opgegeven.
Iemand nog een tip om mij verder op weg te helpen ?
Ik vermoed dat dit zeker geen onmogelijkheid is, alleen mijn kennis van Php niet voldoende is.
Wel wil ik hieruit leren maar vind niet het juiste pad.
Op deze link vind ik ook een deel terug dat vergelijkbaar is met mijn vraag. Alleen de vraag is hoe en waar wordt de code van 'YOURFUNCTION' opgegeven.
Code:
$lists['regionslist' ]= JHTML::_('select.genericlist', $regionslistx, 'City', 'onchange=\"YOURFUNCTION()\"', 'value', 'text', $lx );
Iemand nog een tip om mij verder op weg te helpen ?
Laatst bewerkt 19 jul 2016 15:39 door Donamd.
Discussie gesloten.
- Donamd
-
Heeft onderwerp gestart
- Regelmatige bezoeker van Joomla!NL
-
- Berichten: 269
Aanpassen JHTML select.genericlist met onchange
19 jul 2016 16:31
Ik heb de juiste wijze gevonden om de functie aan te roepen en eveneens de geselecteerde item op te vangen.
Voorlopig kan ik weer even verder en kom er op terug als ik het helemaal klaar heb of als er zich nog een bijkomend probleem zou voordoen.
Voorlopig kan ik weer even verder en kom er op terug als ik het helemaal klaar heb of als er zich nog een bijkomend probleem zou voordoen.
Discussie gesloten.
- Donamd
-
Heeft onderwerp gestart
- Regelmatige bezoeker van Joomla!NL
-
- Berichten: 269
Aanpassen JHTML select.genericlist met onchange
19 jul 2016 23:06
Ik ga nog even verder in dit bericht voor het verder af te werken van deze plugin. Ik denk dat er nog 1 struikelblok is.
Op deze link zie je verschillende producten vermeld. Als je bij het eerste product een optie selecteert waarbij in de naam Gekleurd vermeld staat zal je zien dat er een input veld verschijnt op het scherm waar de kleur ingevoerd dient te worden. Verander je dit daarna terug naar wit, dan hoeft er geen kleur gekozen te worden en wordt het inputveld niet getoond. Tot dusver in orde.
Bij dit overzicht staan er echter meer dan 1 product op waardoor er een probleem ontstaat..
Hieronder staat de code zoals ik deze momenteel gebruik.
Je zal zien dat ik bij kleur_veld de parameter [0] heb toegevoegd welk verwijst naar het eerste product op het scherm, vandaar dat deze manier ook enkel maar lukt voor het eerste product.
Is er een mogelijkheid om te bepalen bij het hoeveelste product de selectie gedaan werd, zodat ik hiervan de parameter kan bepalen en gebruiken om aan te geven voor het hoeveelste veld de style naar visible of hidden dient aangepast te worden ?
Op deze link zie je verschillende producten vermeld. Als je bij het eerste product een optie selecteert waarbij in de naam Gekleurd vermeld staat zal je zien dat er een input veld verschijnt op het scherm waar de kleur ingevoerd dient te worden. Verander je dit daarna terug naar wit, dan hoeft er geen kleur gekozen te worden en wordt het inputveld niet getoond. Tot dusver in orde.
Bij dit overzicht staan er echter meer dan 1 product op waardoor er een probleem ontstaat..
Hieronder staat de code zoals ik deze momenteel gebruik.
Je zal zien dat ik bij kleur_veld de parameter [0] heb toegevoegd welk verwijst naar het eerste product op het scherm, vandaar dat deze manier ook enkel maar lukt voor het eerste product.
Is er een mogelijkheid om te bepalen bij het hoeveelste product de selectie gedaan werd, zodat ik hiervan de parameter kan bepalen en gebruiken om aan te geven voor het hoeveelste veld de style naar visible of hidden dient aangepast te worden ?
Code:
function myFunction() {
var verpakking = document.getElementById("VM_artikel").value;
var gekleurd = verpakking.substring(0,8);
var kleur_veld = document.getElementsByClassName("vmcustom-textinput");
var kleur_titel = document.getElementsByClassName("product-fields-title-wrapper");
if (gekleurd =="Gekleurd") {
kleur_veld[0].style.visibility = "visible";
kleur_titel[1].style.visibility = "visible";
} else
{
kleur_veld[0].style.visibility = "hidden";
kleur_titel[1].style.visibility = "hidden";
}
}
Discussie gesloten.
- Donamd
-
Heeft onderwerp gestart
- Regelmatige bezoeker van Joomla!NL
-
- Berichten: 269
Aanpassen JHTML select.genericlist met onchange
20 jul 2016 07:47
Indien ik een parameter zou mee kunnen sturen naar de functie zou dit een oplossing kunnen zijn.
Met volgende code ben ik aan het testen geweest, maar dit lukt voorlopig niet.
Hierbij het gedeelte in PHP waarbij de variabele bepaald wordt.
Voor het eerste artikel geeft krijgt de variabele $klas de waarde [1] [36][1977] toegekend.
Bij myFunction geef ik deze variabele mee tussen de haakjes.
Hier de functie :
Dit werkt dus niet. Als ik bij de parameter gewoon een getal bijvoorbeeld 2 in geef, zonder gebruik te maken van de variabele $klas, dan lukt het wel.
Hoe moet ik dit oplossen.
Met volgende code ben ik aan het testen geweest, maar dit lukt voorlopig niet.
Hierbij het gedeelte in PHP waarbij de variabele bepaald wordt.
Voor het eerste artikel geeft krijgt de variabele $klas de waarde [1] [36][1977] toegekend.
Bij myFunction geef ik deze variabele mee tussen de haakjes.
Code:
$klas = '['.$product->virtuemart_product_id.']['.$params->virtuemart_custom_id.']['.$params->virtuemart_customfield_id .']';
$html = JHTML::_('select.genericlist', $selects, $klas,'class=customqvariant onchange="myFunction($klas)"','value','text',$selects[0],false,true);
Hier de functie :
Code:
function myFunction(test) {
alert (test);
}
Dit werkt dus niet. Als ik bij de parameter gewoon een getal bijvoorbeeld 2 in geef, zonder gebruik te maken van de variabele $klas, dan lukt het wel.
Hoe moet ik dit oplossen.
Discussie gesloten.
- Donamd
-
Heeft onderwerp gestart
- Regelmatige bezoeker van Joomla!NL
-
- Berichten: 269
Tijd voor maken pagina: 0.893 seconden