根据SAPUI5中的复选框标志激活输入字段

时间:2017-09-26 10:33:38

标签: javascript sapui5

我正在尝试根据复选框标志激活输入字段。输入字段未激活。请帮忙。   以下是视图和组件的片段。

查看------------------------------------------

<mvc1:View
   controllerName="sap.ui.demo.wt.controller.App"
   xmlns="sap.m"
   xmlns:mvc1="sap.ui.core.mvc1">

<CheckBox id="ch1" text="Test" selected="false" select ="checkDone" enabled="true" />

<Input  id="i1" enabled="false"></Input>

</mvc1:View>

控制器---------------------------------------

sap.ui.define([
                   "sap/ui/core/mvc/Controller"
                ], function (Controller) {
                   "use strict";
                   return Controller.extend("sap.ui.demo.wt.controller.App",{
                       checkDone: function (oEvent) {
                           var check = oEvent.getParameter("selected");
                            if (check === true){
                             sap.m.Input({id:"i1",
                                enabled:"true",
                                label: "Amount",
                                textAlign: sap.ui.core.TextAlign.Right,
                                value: "INR"
                             });
                           }else {
                                return "";
                           }
                        }
                   }); 
                });

2 个答案:

答案 0 :(得分:1)

您可以将输入字段中的enbaled属性绑定到复选框的模型值。然后,如果您选中该框,则应自动启用/禁用输入字段。

这样的事情:

exec (@sql)

答案 1 :(得分:-2)

             checkDone: function (oEvent) {
                 var check = oEvent.getParameter("selected");
                  if (check){
                   this.getView().byId("i1").setEnabled(true);
                 }else{
                   this.getView().byId("i1").setEnabled(false);
                 }
              }

请查看以上代码

对于输入内的占位符

这不是首选方式,但是......

<Input  id="i1" enabled="false" class="placeholder"></Input>

onAfterRendering : function(){
   $(".placeholder .sapMInputBaseInner").attr("placeholder", "Your placeholder Text");
}