Angularjs 安格拉斯在填表
我无法在正文的html中的表格中输入列表。这个列表是使用Angularjs、ajax请求和django生成的。传入列表中包含其他列表,每个查询的大小可能不同。例如:Angularjs 安格拉斯在填表,angularjs,ajax,django,html-table,Angularjs,Ajax,Django,Html Table,我无法在正文的html中的表格中输入列表。这个列表是使用Angularjs、ajax请求和django生成的。传入列表中包含其他列表,每个查询的大小可能不同。例如:[“a”、“b”、“c”]、[“a”、“b”、“c”]、[“a”、“b”、“c”]或[“a”、“b”、“c”、“d”、“e”]、[“a”、“b”、“c”、“d”、“d”、“e”]、[“a”、“b”、“c”、“d”、“e”] 文件dfp_consulta.js function ListDropdown($scope, $http) {
[“a”、“b”、“c”]、[“a”、“b”、“c”]、[“a”、“b”、“c”]或[“a”、“b”、“c”、“d”、“e”]、[“a”、“b”、“c”、“d”、“d”、“e”]、[“a”、“b”、“c”、“d”、“e”]
文件dfp_consulta.js
function ListDropdown($scope, $http) {
$scope.bvmf = {ccvms : [ '1023', '10456', '10472'],
consolidados : [ 't', 'f' ],
origens : [ 'ITR', 'DFP' ],
balancos : [ '1', '2', '3', '4'],
periodos : [ '1-3', '1-6', '1-9', '1-12' ],
anos : [ '1997', '1998', '1999', '2012' ]
$scope.range=[]
$scope.send=function(ccvm, consolidado, origem, balanco, periodo, ano, ano_doc){
$http({
method:'POST',
url:'/sending/',
data:ccvm+consolidado+origem+balanco+periodo+ano+ano_doc,
headers:{'Content-Type': 'application/x-www-form-urlencoded'},
}).success(function(c){
$scope.range=c
})
}
}
文件dfp_consulta.html
{% extends "base.html" %}
{% block corpo %}
<div ng-app="" ng-controller="ListDropdown">
<select ng-model="ccvm" ng-options="ccvm as ccvm for ccvm in bvmf.ccvms"></select><br>
<select ng-model="consolidado" ng-disabled="!ccvm" ng-options="consolidado for consolidado in bvmf.consolidados" ></select><br>
<select ng-model="origem" ng-disabled="!consolidado" ng-options="origem for origem in bvmf.origens" ></select><br>
<select ng-model="balanco" ng-disabled="!origem" ng-options="balanco for balanco in bvmf.balancos" ></select><br>
<select ng-model="periodo" ng-disabled="!balanco" ng-options="periodo for periodo in bvmf.periodos" ></select><br>
<select ng-model="ano" ng-disabled="!periodo" ng-options="ano for ano in bvmf.anos" ></select><br>
<select ng-model="ano_doc" ng-disabled="!ano" ng-options="ano_doc for ano_doc in bvmf.anos" ng-change="send(ccvm,consolidado,origem,balanco,periodo,ano,ano_doc)"></select><br>
<table class='table table-hover'>
{% for i in range %}
<tr>
{% for s in i %}
<td>{{ s }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
</div>
{% endblock %}
{%extends“base.html”%}
{%block corpo%}
{范围%中的i的%1}
{%s在i%}
{{s}
{%endfor%}
{%endfor%}
{%endblock%}
例如,下面的列表
[[“a”,“b”,“c”][“a”,“b”,“c”][“a”,“b”,“c”][“a”,“b”,“c”]]]
,但是,{%for I in range%}
没有使用范围数组问题是Django和AngularJS在模板中使用相同的Jinja2语法进行变量替换
最简单的选择是告诉Django不要在需要使用angularjs变量替换的地方使用它的语法-换句话说,使用verbatim标记:
{% block corpo %}
{% verbatim %}
<div ng-app="" ng-controller="ListDropdown">
<select ng-model="ccvm" ng-options="ccvm as ccvm for ccvm in bvmf.ccvms"></select><br>
<select ng-model="consolidado" ng-disabled="!ccvm" ng-options="consolidado for consolidado in bvmf.consolidados" ></select><br>
<select ng-model="origem" ng-disabled="!consolidado" ng-options="origem for origem in bvmf.origens" ></select><br>
<select ng-model="balanco" ng-disabled="!origem" ng-options="balanco for balanco in bvmf.balancos" ></select><br>
<select ng-model="periodo" ng-disabled="!balanco" ng-options="periodo for periodo in bvmf.periodos" ></select><br>
<select ng-model="ano" ng-disabled="!periodo" ng-options="ano for ano in bvmf.anos" ></select><br>
<select ng-model="ano_doc" ng-disabled="!ano" ng-options="ano_doc for ano_doc in bvmf.anos" ng-change="send(ccvm,consolidado,origem,balanco,periodo,ano,ano_doc)"></select><br>
<table>
<tr ng-model="item2" ng-repeat="item2 in range">
<td ng-repeat="item3 in item2">{{ item3 }}</td>
</tr>
</table>
</div>
{% endverbatim %}
{% endblock %}
{%block corpo%}
{%verbatim%}
{{item3}}
{%endverbatim%}
{%endblock%}
新的表结构允许使用angularjs生成不同数量的行和列
和
另见: