javascript - 如何将列表列表转换为 JavaScript 数组
问题描述
我正在从 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 页面:return 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 Datalist 从 Python 返回的 info_list 中问候数据:
<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>
现在等待我从公司输入中得到的值公司。
我尝试了以下方法,在 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'],…..]
现在我想遍历这个数组并只过滤那些从输入中具有正确公司名称的数组,但我无法访问这些元素,提前感谢 Nir
解决方案
为什么不能访问元素?如果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'));
推荐阅读
- javascript - 使用 createWriteStream 为每个请求创建单独的文件
- php - 在 WooCommerce 结帐中的订单审查表之前根据购物车总数显示消息
- c# - TextChanged 事件在输入的数字前附加一个数字
- powerbi - 根据分隔符 /n 拆分 Power BI 列
- angular - 移除 mat-select 的下拉箭头
- asp.net - 我想在 .NET MVC 中使用剑道网格添加一个全选复选框
- php - PHP基于带键的数组从多维数组中获取值
- jquery - 基于 URL 中的#target 打开 Accordion 项目 - Wordpress 菜单
- python - 如何在 PySpark DataFrame 中的 GroupBy 和聚合之后传递第三方列?
- node.js - 如何获取运行节点 js 服务器的计算机的 IP 地址以用于反应应用程序?