2017-09-26 16 views
0

チェックボックスフラグに基づいて入力フィールドを有効化しようとしています。入力フィールドがアクティブ化されていません。助けてください。 以下は、ビューとコンポーネントのスニペットです。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
入力内のプレースホルダについて
   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"); 
} 
+0

@santosh、おかげで、私はまた、一度ユーザーが書き込みを開始することの方法で、名1、住所1のような入力フィールドにデフォルト値をいくつかのデフォルト値を追加したいと思います自動的に省略されます。この側面に関する手掛かりはありますか? – Jim

+0

正しいとあなたの要件マークが表示されている場合、クエリを使用して回答を更新しました – santhosh

+0

@santosh、あなたは以下のようにコンポーネントファイルを参照していますか? 関数(コントローラ){ "use strict"; 戻り値Controller.extend( "sap.ui.demo.wt.controller.App"、{ checkDone:function(oEvent){ var check = oEvent.getParameter( "selected"); if(チェック=== true 。){ this.getView()byId( "I1")は、setEnabled(TRUE); \t \t \t \t onAfterRendering:関数(){ $( "プレースホルダ.sapMInputBaseInner。 ")ATTR(" プレースホルダ"、 "。あなたのプレースホルダーのテキスト "); } } else { this.getView()。byId(" i1 ")。setEnabled(false); – Jim

1

あなたは、チェックボックスのモデル値に入力フィールドからenbaledプロパティをバインドすることができます。チェックボックスをオンにすると、自動的に入力フィールドの有効/無効が切り替わります。

このような何か:

<CheckBox id="ch1" text="Test" selected="false" select ="checkDone" value="{someModel>/enabledValue}" enabled="true" /> 

<Input id="i1" enabled="{someModel>/enabledValue}"></Input> 
関連する問題