Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

471
Views
TypeError: this.byId(...).close is not a function

the code is from [SAP UI5 walkthrought][1] and code with brandon on youtube. I am getting this error .close is not a function. I tried different ways and couldn't find a solution.

Next.controller.js

sap.ui.define([
"sap/ui/core/mvc/Controller",
"sap/m/MessageToast",
"sap/ui/core/Fragment"], function (Controller, MessageToast, Fragment) {
"use strict";

return Controller.extend("sap.ui.demo.walkthrough.controller.HelloPanel", {

    onShowHello : function () {
        // read msg from i18n model
        var oBundle = this.getView().getModel("i18n").getResourceBundle();
        var sRecipient = this.getView().getModel().getProperty("/recipient/name");
        var sMsg = oBundle.getText("helloMsg", [sRecipient]);

        // show message
        MessageToast.show(sMsg);
    },

    onOpenDialog : function () {

        if (!this.pDialog) {
            this.pDialog = this.loadFragment({
                name: "sap.ui.demo.walkthrough.view.HelloDialog"
            });
        } 
        this.pDialog.then(function(oDialog) {
            oDialog.open();
        });
    },

    onCloseDialog : function () {
        // note: We don't need to chain to the pDialog promise, since this event-handler
        // is only called from within the loaded dialog itself.
        this.byId("HelloDialog").close();
    }
});});

HelloDialog.fragment.xml

<core:FragmentDefinition
 xmlns="sap.m"
 xmlns:core="sap.ui.core">
<Dialog
    id="helloDialog"
    title="hello {/recipient/name}">
    <beginButton>
        <Button
           text="{i18n>dialogclose}"
           press=".onCloseDialog"/>
    </beginButton>
</Dialog></core:FragmentDefinition>

At last I just copied the same code yet getting the same error ".close is not a funtion" [1]: https://sapui5.hana.ondemand.com/#/topic/4da72985139b4b83b5f1c1e0c0d2ed5a

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

In the close method you have written this.byId("HelloDialog").close(); but the id of the dialog is helloDialog.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!