繁体   English   中英

如何在foreach循环中使用javascript获取div的值

[英]How to get the value of a div using javascript in a foreach loop

我有很多在 foreach 中生成的 div,我必须获取这个 div 的值。

@model Recall

@foreach (var veiculo in Model)
                        {
                            <div value="@veiculo.Veiculo.Vin" class="chassi-importado" id="myDiv">
                                @veiculo.Veiculo.Vin
                                <i name="icon-remover-um-chassi" class="bx bx-x-circle"></i>
                            </div>
                        }

我尝试在 javascript 中使用以下代码,但我在列表中得到一个 null 值。 我怎样才能得到正确的价值?

 let veiculos = [];

 $.each($('.chassi-importado'),
                function () {
                veiculos.push({ vin: $(".chassi-importado").val() });
            });

根据文档https://api.jquery.com/each/ $.eachindexelement参数传递到您提供的回调中,但您不使用它们。 此外,您需要使用text()而不是val() ) 来检索innerText值。 val()主要用于inputs

这是您需要做的:

 let veiculos = [];

 $.each($('.chassi-importado'),
   function (index, element) {
     veiculos.push({ vin: $(element).text() });
   }
 );

更好的方法是使用map ,因为您不仅要遍历元素,还要提取它们的值。 以下是如何做到这一点:

 let veiculos = $.map($('.chassi-importado'), (el) => $(el).text());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM