ng-repeat用于具有多种类型的输入模板

时间:2015-06-24 19:21:31

标签: javascript html angularjs angular-ui-bootstrap

我正在创建一个用户界面来添加和编辑数据库。我使用breeze来管理数据库,显示器的角度网格和用户输入的ui-bootstrap模式对话框。当我设置type =""在输入标签上,我无法完成输入的所有信息。如果type =" text"然后为我的主键抛出一个错误,这是一个数字。如果type =" number"然后我的大部分其他输入都不被接受。我相信我有输入的文字,数字和日期时间。在我的模板中实现多种类型有一种好的,直接的方法吗?我即将放弃,只需输入密钥,然后让用户在表格中添加其余部分。

<div class="modal-body">
    <div ng-repeat="(key, value) in newRow">
        <label>{{key | uppercase}}</label>
        <input placeholder="Enter &quot;{{key}}&quot; value"
            class="form-control"
            type="number"
            ng-model="newRow[key]" />
     </div>
 </div>

1 个答案:

答案 0 :(得分:0)

您可以使用ng-class返回“text”,“number”等

<div class="modal-body">
    <div ng-repeat="(key, value) in newRow" ng-class="{text:checkDataType(), number:checkDataType()}">
        <label>{{key | uppercase}}</label>
        <input placeholder="Enter &quot;{{key}}&quot; value"
            class="form-control"
            type="number"
            ng-model="newRow[key]" />
     </div>
 </div>

我不确定你是否有办法从你得到的数据中找出数据类型,所以我把checkDataType()改为填充。如果您确实有找到数据类型的方法,则可以相应地将其设置为等于字符串。如果没有,则必须创建checkDataType()函数并编写一些js。如果您有疑问或需要示例,请与我们联系。祝你好运!