AngularJS - 与Django的交互式表

时间:2015-02-12 22:22:50

标签: angularjs django html-table

我正在尝试创建一个交互式表格,但是,我没有得到。 第一列和第二列来自django,其他列是类型编号的输入,最后一列应该在(2º列 - (第3 + 4rd +第5 + 6rd +第7 + 8列)之间进行数学运算) 我已经尝试了一切但不起作用,有人可以帮助我吗?

下面的代码添加了列,但没有解除第二列,并在输入中输入一个数字,它被复制到所有相同的列。

<div ng-app="">
<table>
    <!--Field name of each column-->
    {% for i in prioridade %}
    <tr>
        {% for x in i %}
            <td>{{ x }}</td>
        {% endfor %}
    </tr>
    {% endfor %}

    <!--Table fill-->
    {% for w in table_01 %}
    <!--Ex: table_01: [['Fev/2015', 10000.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], ['Mar/2015', 911.9, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]]-->
    <tr>
        <td>{{ w.0 }}</td>
        <td>{{ w.1 }}</td>
    {% verbatim %}
        <td><input type="number" ng-model="val1" /></td>
        <td><input type="number" ng-model="val2" /></td>
        <td><input type="number" ng-model="val3" /></td>
        <td><input type="number" ng-model="val4" /></td>
        <td><input type="number" ng-model="val5" /></td>
        <td><input type="number" ng-model="val6" /></td>
        <td>{{ w.1-(val1 + val2 + val3 + val4 + val5 + val6) }}</td>
    {% endverbatim %}
    </tr>
{% endfor %}
</table>

2 个答案:

答案 0 :(得分:1)

    <td>{% endverbatim %}{{ w.1}}{% verbatim %}{{-(val1 + val2 + val3 + val4 + val5 + val6) }}</td>
{% endverbatim %}

我认为是这样的,因为w.1是django模板,应该是逐字的

答案 1 :(得分:0)

您的条目在行之间重复的原因是因为它们都引用了相同的ng模型。例如第3列中的所有条目都附加到val1模型。您必须为每个项目分配一个单独的模型名称,或者使用ng-repeat而不是django for循环来重复您的行。

也许这会给你想要的结果。

{% verbatim %}
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val1" /></td>
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val2" /></td>
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val3" /></td>
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val4" /></td>
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val5" /></td>
    <td><input type="number" ng-model="{% endverbatim %}row_{{forloop.counter}}{% verbatim %}val6" /></td>
    <td>{{ {% endverbatim %} w.1-(row_{{forloop.counter}}val1 + row_{{forloop.counter}}val2 + row_{{forloop.counter}}val3 + row_{{forloop.counter}}val4 + row_{{forloop.counter}}val5 + row_{{forloop.counter}}val6) {% verbatim %} }}</td>
{% endverbatim %}

我不确定逐字和模板标签的混合是如何工作的,无论如何,它最好处理角度控制器中的计算。