I want to trigger the update() function of kursAktiv.vue when I press the button “Kursanlegen” in kursAnlegen.vue ! Here are the kursAnlegen button and function:
<kursverwalter v-model:value="props_kursverwalter_anlegen" v-bind:mitglieder="mitglieder"
v-bind:mitgliedsarten="mitgliedsarten" v-bind:platzkategorien="platzkategorien">
<div align="left" class="form-group">
<div class="btn-toolbar">
<button type="button" class="btn btn-primary" v-on:click="kursAnlegen"
:disabled="!kursAnlegenAllowed" style="margin-left: 23px;">Kurs anlegen</button>
</div>
</div>
</kursverwalter>
and
kursAnlegen: async function () {
if (this.props_kursverwalter_anlegen.anmeldung_end < this.props_kursverwalter_anlegen.anmeldung_start) {
this.requestResponse = "Das Ende des Anmeldezeitraums befindet sich vor dem Beginn des Anmeldezeitraums!"
document.getElementById('dropdownErklaerung').scrollIntoView();
return
}
if (this.props_kursverwalter_anlegen.laufzeit_end < this.props_kursverwalter_anlegen.laufzeit_start) {
this.requestResponse = "Das Ende der Laufzeit des Kurses befindet sich vor dem Beginn der Laufzeit des Kurses!"
document.getElementById('dropdownErklaerung').scrollIntoView();
return
}
try {
await apiRequest("post", "kursverwaltung/kurs", this.props_kursverwalter_anlegen);
this.requestResponse = "Kurs erfolgreich angelegt."
} catch (ex) {
console.log(ex)
this.requestResponse = "Kursname ist bereits vergeben oder nicht alle erforderlichen Felder wurden ausgefüllt."
}
document.getElementById('dropdownErklaerung').scrollIntoView();
}
and here is the kursAktiv hmtl code until the props and data def.:
<template>
<box_content>
<h2 id="scrollToTopAktiv"><strong>Aktive Kurse</strong>
<div class="" style="margin-top: 4px; margin-left: 110px; position: absolute; top: 16px; color: #909090">
<a class="additional-icon" id="dropdownErklaerung" data-toggle="dropdown" aria-expanded="false"
style="color: #909090"><i class="fa fa-question-circle"></i></a>
<div class="fragezeichenErklaerung dropdown-menu pull-right" style="margin-right: -150px"
aria-labelledby="dropdownErklaerung">
In diesem Menü können Sie die aktiven Kurse einsehen.
</div>
</div>
<template v-if="kurse && kurse.length > 0">
<div class="pull-right selectobenrechts" style="margin-top: -10px; max-width: 368px;">
<select v-model="selected_kurs_id" class="form-control inline" data-width="150px"
style="z-index:0 !important; display: inline-block;;" @change="updateSelection">
<option disabled value="-1">Bitte Kurs wählen</option>
<option v-for="kurs in kurse" :key="kurs.id" :value="kurs.id">
{{ kurs.name }}
</option>
</select>
</div>
</template>
</h2>
<p></p>
<template v-if="requestResponse != ''">
<div class="alert alert-success alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true" style="font-size: 14px; line-height: 14px; padding-top: 6px;">x</button> {{ requestResponse }}
</div>
</template>
<template v-if="kurse && kurse.length > 0">
<template v-if="selected_kurs_id != -1">
<kursverwalter v-model:value="selected_kurs" :mitglieder="mitglieder" v-bind:mitgliedsarten="mitgliedsarten"
v-bind:platzkategorien="platzkategorien" >
<div align="left" class="form-group">
<div class="btn-toolbar">
<button type="button" class="btn btn-primary" v-on:click="kursUpdaten" :disabled="!kursUpdatenAllowed">Kurs
speichern</button>
<button type="button" class="btn btn-danger" v-on:click="kursLoeschen">Kurs löschen</button>
</div>
</div>
</kursverwalter>
</template>
<template v-else>
<center>
<h2>Bitte wählen Sie einen Kurs aus.</h2>
</center>
</template>
</template>
<template v-else>
<center>
<h2>Es sind keine aktiven Kurse vorhanden.</h2>
</center>
</template>
</box_content>
</template>
<script>
import { apiRequest } from "../../services/api.js"
import box_content from "../../components/box_content.vue"
import kursverwalter from "../../components/kursverwaltung/kursverwalter.vue"
import { datumermitteln } from "../../services/service_scheduler"
import kursAnlegen from "./kursAnlegen.vue"
export default {
components: {
box_content, kursverwalter,
kursAnlegen
},
props: {
neuKurs:0,
mitglieder: [],
mitgliedsarten: [],
platzkategorien: [],
},
data: function () {
return {
kurse: null,
selected_kurs_id: -1,
selected_kurs: {},
requestResponse: "",
}
},
Thanks in advance! 😀
I worked with v-bin and importing the functions but it showed that there is no such funktion…