我正在从Python中的银行帐户的Sql-server数据库列表中检索
Alllist=select_from_db_service(sql,[1],organization)
if len(Alllist)>0:
for row in Alllist:
info_list.append((list(row)))
然后我将其呈现到HTML页面: 返回render(request,'app / reporting.html',
{'info_list':info_list,'start_date':start_date,'end_date':end_date})
在HTML页面中,我有两个下拉列表输入Company和Account_id
<input type="text" list='List_of_Companies' data-search-in="Company" id="Input1" name="Companyname" placeholder="Choose a Company" value="{{ Company}}" >
<input type="text" list='List_of_Accounts' data-search-in="Account" id="Input2" name="Accountname" placeholder="Choose an Account ID" value="{{ Account_Id}}" hidden>
<br> <br>
他们两个都问候使用HTML数据列表从info_list返回的数据从Python返回:
<datalist id="List_of_Companies">
<select id="filenamelist" size="5" class="select">
{% for Company in info_list %}
<option value="{{ Company.3 }}">{{ Company.3 }}</option>
{% endfor %}
</select>
</datalist>
<datalist id="List_of_Accounts">
<select id="filenamelist" size="5" class="select">
{% for Company in info_list %}
<option value="{{ Company.0 }}" data-value="{{ Company.3 }}" > {{ Company.3 }}</option>
{% endfor %}
</select>
</datalist>
现在要等待我从公司输入中获得的值,我想仅在我能够执行的帐户ID输入中显示相关输入,并基于输入,仅在info_list中显示仅包含相关条目的HTML DataTalbe。用户在公司上选择。
我尝试了以下操作,在HTML页面的Form标签中:
<input type="text" id="DataTableInput" value="{{ info_list}}" hidden />
我在JavaScript中尝试过:
var dataSet = document.getElementById("DataTableInput").value;
console.log('DataSet' + dataSet)
输出如下:
DataSet[['39 XXX, 'EUR', 'CS', Company_name', 4, '01-jan-2019'], ['12 XXX',, 'USD, 'CS', 'Company_name2', 5, '01-jan-2019'],
['34 XXX', 'USD', 'CS', Company_name2', 5, '01-jan-2019'],…..]
现在,我想遍历此数组并仅从输入中过滤具有正确公司名称的那些,但是我无法访问这些元素, 提前致谢, 尼尔
答案 0 :(得分:0)
为什么不能访问该元素?如果console.log(dataSet[2])
为您提供公司名称,则您应该可以执行以下操作:
function filterByCompanyName(array, name) {
//assuming index 3 is always the company name of course
return array.filter(item => item[3] == name);
}
let givenArray = [['39 XXX', 'EUR', 'CS', 'Company_name', 4, '01-jan-2019'], ['12 XXX', 'USD', 'CS', 'Company_name2', 5, '01-jan-2019'],
['34 XXX', 'USD', 'CS', 'Company_name2', 5, '01-jan-2019']];
console.log(filterByCompanyName(givenArray, 'Company_name2'));