# Aus Bootstrap Variable an Jquery übergeben

**URL:** <https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650>\
**Category:** Programmierung\
**Created:** [30. März 2016 um 09:39 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650 "2016-03-30T09:39:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![hoppler](https://avatars.discourse-cdn.com/v4/letter/h/b487fb/32.png) [@hoppler](https://forum.shopware.com/u/hoppler)\
**Post date:** [30. März 2016 um 09:39 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/1 "2016-03-30T09:39:28Z")

</div>

Hallo liebe Community,

&nbsp;

ich habe ein ganz simples Plugin. Es gibt ein Textfeld, in dem ich “Hallo Welt” eintrage.

Wenn ich die Variable über “$view-\>assign(‘meintext’, $config-\>meintext);” ausgebe, dann kann ich diese über die .tpl anzeigen lassen.

&nbsp;

So weit alles gut - nur jetzt kommt mein Problem:

Ich habe Jquery eingebunden. Natürlich auch den Event registriert.

public function addJsFiles(Enlight\_Event\_EventArgs $args) {  
&nbsp;&nbsp; $jsFiles = array(\_\_DIR\_\_ . ‘/Views/frontend/plugins/hallowelt/\_public/src/js/script.js’);  
&nbsp;&nbsp; return new Doctrine\Common\Collections\ArrayCollection($jsFiles);  
}

Gebe ich nun in meiner “script.js” folgendes ein:

jQuery(document).ready(function ($) {

alert(‘Hallo Welt’);&nbsp;

});

dann wird mir “Hallo Welt” angezeigt.

&nbsp;

Versuche ich allerdings:

jQuery(document).ready(function ($) {

alert(’{$hallowelt}’);&nbsp;

});

&nbsp;

dann wird mir {$hallowelt} angezeigt.

&nbsp;

Natürlich könnte ich über die .tpl die Variable {$hallowelt} Javascript als Variable zuordnen - was auch funtioniert.

Ich würde mir aber gerne den umständlichen Weg über die Javascript Variable sparen.

In Less gibt es ja die Möglichkeit direkt auf Variablen aus der Bootstrap zuzugreifen:

&nbsp;

&nbsp;&nbsp;&nbsp; public function addLessFiles(Enlight\_Event\_EventArgs $args)  
&nbsp;&nbsp;&nbsp; {  
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; $less = new \Shopware\Components\Theme\LessDefinition(  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //configuration  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; array(  
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;‘halloweltbreite’ =\> $this-\>Config()-\>get(‘halloweltbreite’),

&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ),  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //less files to compile  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; array(  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \_\_DIR\_\_ . ‘/Views/frontend/plugins/hallowelt/\_public/src/less/all.less’  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ),  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //import directory  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \_\_DIR\_\_  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return new Doctrine\Common\Collections\ArrayCollection(array($less));  
&nbsp;&nbsp;&nbsp; }

über:

@halloweltbreite\*1px

in der “style.less”

&nbsp;

Gibt es denn nicht die Möglichkeit Variablen aus der Bootstrap DIREKT in meiner script.js zu verwenden, ohne den Umweg .tpl --\> Javascript???

&nbsp;

Wenn diese Möglichkeit existiert, dann würde ich mich sehr über ein Beispiel freuen.

Ich habe auch schon den Artikel “Getting started with the statemanager and the jQuery plugin base” gelesen, weiss aber leider nicht ob es das richtige ist und wie ich es nutzen könnte.

Vielen Dank im voraus

Hoppler

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [30. März 2016 um 09:43 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/2 "2016-03-30T09:43:58Z")

</div>

Hallo,

soweit mir bekannt ist, gibt es im Gegensatz zu LESS und Smarty keinen direkten Weg, in der JavaScript-Datei auf die Variable zuzugreifen.

Du könntest diese aber unproblematisch dem entsprechenden Element in der Template-Datei bspw. als “data”-Eigenschaft zuordnen und diese Eigenschaft dann in deiner JavaScript-Datei abfragen etc.

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![hoppler](https://avatars.discourse-cdn.com/v4/letter/h/b487fb/32.png) [@hoppler](https://forum.shopware.com/u/hoppler)\
**Post date:** [30. März 2016 um 09:49 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/3 "2016-03-30T09:49:40Z")

</div>

Hallo Sebastian,

&nbsp;

vielen lieben Dank für Deine Antwort.

Das hört sich sehr gut an! Nur, sorry, wie mache ich das?

Muss ich eine DIV Box erstellen und diese dann mit Werten aus der View meines Plugins befüllen?

Und wie würde ich das in meiner JavaScript abfragen?

Ich weiss, viele Fragen - aber wer nicht fragt, kann nichts lernen. ![Thumb-Up](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/7fcda44f782696668a3d093569d15e88105769e1.png "Thumb-Up")

L.G.

Hoppler

&nbsp;

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [30. März 2016 um 10:42 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/4 "2016-03-30T10:42:38Z")

</div>

> [@hoppler schrieb:](https://forum.shopware.com/profile/18620/hoppler "hoppler")
> 
> Hallo Sebastian,
> 
> &nbsp;
> 
> vielen lieben Dank für Deine Antwort.
> 
> Das hört sich sehr gut an! Nur, sorry, wie mache ich das?
> 
> Muss ich eine DIV Box erstellen und diese dann mit Werten aus der View meines Plugins befüllen?
> 
> Und wie würde ich das in meiner JavaScript abfragen?
> 
> Ich weiss, viele Fragen - aber wer nicht fragt, kann nichts lernen. ![Thumb-Up](http://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/thumb-up.png "Thumb-Up")
> 
> L.G.
> 
> Hoppler
> 
> &nbsp;

Hallo,

naja du nutzt ja so und so ein neues Textfeld - dem könntest du ja einfach ein Attribut bspw. data-meinattribut=„{$hallowelt}“ mit zuweisen

und dann in deiner JavaScript-Datei bspw. über:

```
var meinattribut = $('.mein-textfeld').attr("data-meinattribut");

```

den Wert abfragen.

Beste Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![hoppler](https://avatars.discourse-cdn.com/v4/letter/h/b487fb/32.png) [@hoppler](https://forum.shopware.com/u/hoppler)\
**Post date:** [30. März 2016 um 11:29 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/5 "2016-03-30T11:29:25Z")

</div>

Vielen lieben Dank für die schnelle Hilfe!!!

&nbsp;

Nur schade dass man Bootstrab Form Variablen nicht über JavaScript oder Jquery direkt auslesen kann.

L.G.

Hoppler

---

<div class="post-metadata">

**Author:** ![coarsy](https://avatars.discourse-cdn.com/v4/letter/c/59ef9b/32.png) [@coarsy](https://forum.shopware.com/u/coarsy)\
**Post date:** [3. Mai 2016 um 09:24 UTC](https://forum.shopware.com/t/aus-bootstrap-variable-an-jquery-ubergeben/35650/6 "2016-05-03T09:24:32Z")

</div>

Du schreibst ein JQuery Plugin und gibst die Variablen an die Initialisierung des Plugins mit.

Zum Beispiel so:

```
$("#variantselector").variantSelector({
requestUrl : "https://www.meinestruempfe.de/CbeVariantsDetail/getVariants",
articleID : "498",
articleTax : "19",
availableStockText : "Artikel verfügbar",
lowStockText : "Nur noch sehr wenige Artikel verfügbar",
lowStockTextPrefix : "Nur noch",
lowStockTextSuffix : "Artikel verfügbar",
outOfStockText : "Artikel leider vergriffen",
intoBasketText : "In den Warenkorb",
regularPriceText : "(Unser regulärer Preis)",
lastArticleText : "Das ist der letzte Artikel! Schnell zugreifen!",
variantsDeliveryText : "Wieder lieferbar:",
useZoomPlus : false,
lowStockValue : 3,
imgSrcSmall : 0,
imgSrc : 1,
imgSrcZoom : 2,
notificationText : "Benachrichtigen Sie mich, wenn der Artikel lieferbar ist."
});

```

&nbsp;
