2015-11-02 97 views
0

我正在使用angularjs生成動態文本框。我在控制器中設置了一個數組,然後用ng-repeat重複。下面是控制器代碼: -Angularjs佔位符在動態生成文本框時不顯示

this.total_options = [ 
     {text : 'form.options.Option1' , placeholder: 'Enter Option Here'}, 
     {text: 'form.options.Option2', placeholder: 'Enter Option Here' } 
    ]; 

現在,鑑於我是在重複這個選項,如: -

<li data-ng-repeat="option in mcssController.total_options">     
    <input required="required" type="text" ng-model="option.text" class="option" placeholder="{{option.placeholder}}" /> 
</li> 

但當頁面呈現的文本框中顯示NG-模型屬性「form.options.optoin1」而不是佔位符('在此處輸入選項')。我怎麼解決這個問題 ?

+0

你可以發佈整個HTML文件嗎? – levi

+0

HTML查看plz Gitesh – levi

+0

我認爲我已經發布的相關內容。相關內容與該主題沒有任何關係。 @levi –

回答

0

看看你是否清除表格,你應該能夠看到佔位符!

enter image description here

0

嘗試:

<li data-ng-repeat="option in mcssController.total_options">     
    <input required="required" type="text" ng-init="model=$eval(option.text)" ng-model="model" class="option" placeholder="{{option.placeholder}}" /> 
</li> 

你想ngModel綁定到一個模型,而不是代表一個字符串的屬性。既然你想將字符串解釋爲模型,你可以使用$ scope。$ eval。如果您在ngInit表達式中使用$ scope。$ eval,然後使用result綁定到ngModel,它應該可以工作。

+0

我如何訪問模型中的文本框值。我想要模型上的表單對象。模型名稱生成像form.options.option,所以在模型中,我可以通過$ scope.form獲取所有值。但它不以這種方式工作。 @pixelbits –