Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将属性添加到angular2中*ngfor中动态生成的元素_Javascript_Angular - Fatal编程技术网

Javascript 将属性添加到angular2中*ngfor中动态生成的元素

Javascript 将属性添加到angular2中*ngfor中动态生成的元素,javascript,angular,Javascript,Angular,我有下面的html <table class="table table-bordered"> <thead> <tr> <th class="col-md-5 tableSectionHeader">Description</th> <th class="col-md-1 tableSectionHeader">Q

我有下面的html

    <table class="table table-bordered">
        <thead>
            <tr>
                <th class="col-md-5 tableSectionHeader">Description</th>
                <th class="col-md-1 tableSectionHeader">Quantity</th>
                <th class="col-md-1 tableSectionHeader">Cost</th>
                <th class="col-md-2 tableSectionHeader">Brand</th>
                <th class="col-md-2 tableSectionHeader">Other Brand</th>
                <th class="col-md-1 tableSectionHeader"></th>
            </tr>
        </thead>
        <tbody *ngIf="prototypeSampleRequest && prototypeSampleRequest.Items">
            <tr *ngFor="let item of prototypeSampleRequest.Items; let i=index;" 
                prototypeSampleRequest-item [item]="item" [itemIndex]="i" 
                [items]="prototypeSampleRequest.Items" 
                [brands]="brands"
                [isReadOnly]="isReadOnly"
                (itemsCostChangedEvent)="itemsCostChangedEvent()">

            </tr>
        </tbody>
    </table>
因此,我使用了一个服务,它获取
prototypeSampleRequest.Items
的数据,并将其直接绑定到tr元素

问题是生成的文本框的类型是number,我得到一个弹出窗口,说成本和数量字段的值无效。这些字段在生成时的类型是number

<tr prototypesamplerequest-item="" ng-reflect-item="[object Object]" ng-reflect-item-index="0" ng-reflect-items="[object Object],[object Object],[object Object],[object Object]" ng-reflect-is-read-only="false" ng-reflect-brands="[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]">

<td>
<input class="form-control input-sm ng-untouched ng-pristine ng-valid" type="text" ng-reflect-name="item.Name_" ng-reflect-is-disabled="false" ng-reflect-model="sa">
</td>

<td>
<input class="form-control input-sm numericField ng-untouched ng-pristine ng-valid" type="number" ng-reflect-name="item.Quantity_" ng-reflect-is-disabled="false" ng-reflect-model="5.66">
</td>

<td>
    <input class="form-control input-sm numericField ng-untouched ng-pristine ng-valid" type="number" ng-reflect-name="item.Cost_" ng-reflect-is-disabled="false" ng-reflect-model="6.5">
</td>

</tr>
下面是生成的html

<tr prototypesamplerequest-item="" ng-reflect-item="[object Object]" ng-reflect-item-index="0" ng-reflect-items="[object Object],[object Object],[object Object],[object Object]" ng-reflect-is-read-only="false" ng-reflect-brands="[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]">

<td>
<input class="form-control input-sm ng-untouched ng-pristine ng-valid" type="text" ng-reflect-name="item.Name_" ng-reflect-is-disabled="false" ng-reflect-model="sa">
</td>

<td>
<input class="form-control input-sm numericField ng-untouched ng-pristine ng-valid" type="number" ng-reflect-name="item.Quantity_" ng-reflect-is-disabled="false" ng-reflect-model="5.66">
</td>

<td>
    <input class="form-control input-sm numericField ng-untouched ng-pristine ng-valid" type="number" ng-reflect-name="item.Cost_" ng-reflect-is-disabled="false" ng-reflect-model="6.5">
</td>

</tr>

我正在研究这个问题,这个问题可以通过在输入字段中添加step=any来解决

<input type="number" step="any" />

所以我的问题是,当*ngfor生成成本和数量字段时,如何将该属性添加到成本和数量字段中


谢谢

有什么问题吗?您想将它们添加到哪里?当您将它们添加到
*ngFor
中时,为什么您认为会有不同之处?
与上述代码的其余部分有何关联?这是为数量生成的内容。它的类型为数字,因此在保存表单时,我会看到一个弹出窗口,告诉我是否输入了,比如说5.5,在5或6之间选择…表单会保存,但弹出窗口总是出现,我仍然看不到输入与
*ngFor
的关系。您在第一个代码段中有
*ngFor
,在最后一个代码段中有
,并且没有提示它们之间的关系。还有,
jquery
是如何涉及的?我编辑了这个问题以显示最终生成的html。实际上,您需要动态更改输入类型吗?