如何设置片段元素的值



这是我的片段,片段没有控制器

<core:FragmentDefinition
  xmlns="sap.m"
  xmlns:core="sap.ui.core">
  <Dialog
    title="Invio report via mail">
    <content>
        <FlexBox
            alignItems="Start"
            justifyContent="Center">
            <items>
             <TextArea id="idMailReport" value="themail.mail.it" rows="1" cols="50" /> 
            </items>
        </FlexBox>

    </content>
    <beginButton>
      <Button text="Ok" press="onDialogOkButton" />
    </beginButton>
    <endButton>
      <Button text="Close" press="onDialogCloseButton" />
    </endButton>
  </Dialog>

</core:FragmentDefinition>

我可以设置TextArea元素的值吗?

我尝试从控制器设置它,我调用片段:

var dialogFrafment = sap.ui.xmlfragment(
                "dialogFragment",
                "appIntra.fragment.dialog",
                this // associate controller with the fragment
          );
          this.getView().addDependent(dialogFrafment);
          dialogFrafment.open();
          this.byId("idMailReport").setValue("initial.mail.com");

你能帮我吗?

请尝试

sap.ui.getCore().byId("idMailReport").setValue("initial.mail.com");

它应该工作。

这是正式文件

我解决了!

var dialogFrafment = sap.ui.xmlfragment(
                "appIntra.fragment.dialog",
                this.getView().getController() // associate controller with the fragment            
          );

我的问题是,我已经设置了一个片段的名称:"dialogFragment"没有它所有的工作!div;)

有点过时,但可能对其他人有用。当你在一个视图中重用你的片段时,给它一个唯一的id,比如:

    var dialogFrafment = sap.ui.xmlfragment(
            "dialogFragment", // this is fragment's ID
            "appIntra.fragment.dialog",
            ...
      );

检索嵌套控件的id如下:

<>以前this.byId (sap.ui.getCore () .Fragment()。createId("dialogFragment"、"idMailReport ")); 之前

这样,你的前置片段的id到你的控件的id。

最新更新