# Artikel Detailsseite - programmatisches triggern des AJAX Varianten Reloads

**URL:** https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798
**Category:** Programmierung
**Created:** [17. Oktober 2018 um 14:19 UTC](https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798 "2018-10-17T14:19:59Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![stormerMike](https://avatars.discourse-cdn.com/v4/letter/s/e0b2c6/32.png) [@stormerMike](https://forum.shopware.com/u/stormerMike)
#### Post date: [17. Oktober 2018 um 14:19 UTC](https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798/1 "2018-10-17T14:19:59Z")

</div>

Ich habe ein Listing mit allen Varianten auf der Artikel Detailseite eingefügt und würde gerne bei einem Klick auf eine Variante im Listing das AJAX Reload Event anstoßen damit sich der obere Bereich mit den Variantenoptionen neu lädt. Variantenkonfiguration ist auf **Picture** gestellt und Asynchrones Varianten laden ist aktiviert.

Hab schon erfolgreich ein Event registriert und fange mit Event Delegation alle Klicks auf meine Links im Listing ab und setze die entsprechenden Radio Inputs (die sich ja hinter den Labels der Variantenoptionen befinden) auf **checked**. Funktioniert soweit auch.

Eine funktionierende aber nicht praktikable Lösung ist das abschicken des **.configurator–form** Formulars per **submit()** call was aber so nicht gewünscht ist.

Ich würde gerne programmatisch das Neuladen der Variante per AJAX anstoßen genau so als wie man mit der Maus auf eine Variantenoption klickt und sich die Galerie + die Variantenoptionen aktualisieren.

Shopware Plugin ist das **swAjaxVariant** in /themes/Frontend/Responsive/frontend/\_public/src/js/ **jquery.ajax-variant.js**. Leider hab ich bei Dr. Goolge nichts gefunden wie man ein Plugin aufruft, nur wie man sich auf Events hängen (mach ich eh schon für **onRequestData** ) und wie man Plugins erweitern kann.

Vielen Dank schon mal für eure Hilfe.

Hier mein JS:

```
;(function ($, document) {
    $(function () {
        function registerVariantLoadFromVariantList() {
            if ($("#variant-list")) {
                $("#variant-list").delegate("a", "click", function (event) {
                    event.preventDefault();
                    var configValues = $(this).data("configvalues").split(";");
                    // first: uncheck and enable all variant options
                    $(".variant--option input").prop("disabled", false);
                    $(".variant--option input").prop("checked", false);

                    // enable selected variant options
                    for (var i = 1; i < configValues.length; i++) {
                        $(".variant--option input[id='" + configValues[i] + "']").prop("checked", true);
                    }
                    $("body").setLoading(true);
                    // statt der folgenden Zeile würde ich gerne den AJAX-Request zum Variantenoptinen neu laden anstoßen
                    //$(".configurator--form").submit();
                });
            }
        }

        registerVariantLoadFromVariantList();
        $.subscribe('plugin/swAjaxVariant/onRequestData', function() {
            registerVariantLoadFromVariantList();
        });
    });
})(jQuery, document);

```

&nbsp;

---

<div class="post-metadata">

### Author: ![stormerMike](https://avatars.discourse-cdn.com/v4/letter/s/e0b2c6/32.png) [@stormerMike](https://forum.shopware.com/u/stormerMike)
#### Post date: [30. Oktober 2018 um 06:38 UTC](https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798/2 "2018-10-30T06:38:00Z")

</div>

Wirklich niemand einen Hinweis? Auch niemand von Shopware… ![Blush](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/2f2885a69a3ab7fc5454d32cd96e7133e5bcd558.png "Blush")

---

<div class="post-metadata">

### Author: ![christiantrade](https://avatars.discourse-cdn.com/v4/letter/c/c4cdca/32.png) [@christiantrade](https://forum.shopware.com/u/christiantrade)
#### Post date: [30. Oktober 2018 um 06:43 UTC](https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798/3 "2018-10-30T06:43:26Z")

</div>

Steht doch da, wie man das Plugin aufruft 🙂

> <https://github.com/shopware/shopware/blob/5.5/themes/Frontend/Responsive/frontend/_public/src/js/jquery.ajax-variant.js#L5-L10>

```
     * @example
     * HTML:
     * 
     *
     * JS:
     * $('*[data-ajax-variants-container="true"]').swAjaxVariant();

```

Und soweit ich sehe, wird der click in der init method getriggert -\>&nbsp;[shopware/jquery.ajax-variant.js at 5.5 · shopware/shopware · GitHub](https://github.com/shopware/shopware/blob/5.5/themes/Frontend/Responsive/frontend/_public/src/js/jquery.ajax-variant.js#L67-L70)

---

<div class="post-metadata">

### Author: ![stormerMike](https://avatars.discourse-cdn.com/v4/letter/s/e0b2c6/32.png) [@stormerMike](https://forum.shopware.com/u/stormerMike)
#### Post date: [13. November 2018 um 07:08 UTC](https://forum.shopware.com/t/artikel-detailsseite-programmatisches-triggern-des-ajax-varianten-reloads/55798/4 "2018-11-13T07:08:48Z")

</div>

@christiantrade‍ Danke für deinen Input aber damit hat es leider nicht funktioniert (vielleicht mach ich da auch was falsch), das hatte ich schon probiert.

Naja, werde wohl bei per JS ausgelösten „Klicks“ auf Elemente/Buttons bleiben um das Formular abzuschicken bzw. dadurch den AJAX-Call anzutriggern.
