首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用jQuery遍历Javascript数组并将行追加到html表中--

使用jQuery遍历Javascript数组并将行追加到html表中--
EN

Stack Overflow用户
提问于 2018-06-24 03:28:45
回答 1查看 410关注 0票数 0

目前,我正在努力处理一些jQuery数组遍历问题。我有一些这样的数据--

我想要的-是遍历这个数组,并将值添加到一个html表中。

就像--

代码语言:javascript
复制
Product      Unit Price          Quantity             Total
-----------------------------
------------------------------------
--------------------------
--------------------------

我写的代码是

代码语言:javascript
复制
    parseRowData() {
    var htmlApp = "";
    $.each(this.dTable, function (ind, val) {
        //var varArr = new Array();
        //varArr.push(val);
        htmlApp += "<tr><td>" + val[ind]["product"] + "</td><td>" + val[ind]["unitprice"] + "</td><td>" + val[ind]["quantity"] + "</td><td>" + val[ind]["total"] + "</td></tr>";
        $("invTable tbody").appendTo(htmlApp);
    });

}

最初,我也尝试使用简单的for循环,但没有得到正确的结果。空表或具有重复多次的相同数据行的表。请在构建循环逻辑方面给我一点帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-24 04:35:26

我认为一个恰当的答案是正确的。

知道console.log(val)返回正确的内容(参见https://pasteboard.co/HrgUGv8.png),我们也知道val是一个对象。

然后,您可以通过执行val.productval.unitprice等调用该对象的每个属性。

您将在htmlApp变量中连接新创建的行。

完成$.each循环后,需要将它们插入到$("invTable tbody")中。所以:

$.each(this.dTable,function (ind,val) {//你的所有建筑都在这里});$("invTable tbody").html(htmlApp);

执行此操作时,您将用在htmlApp中连接的所有行替换<tbody>的全部内容。

更多信息:如果想要将行单独添加到表中,可以在循环中完成,但不能在htmlApp中连接它们。

您将执行以下操作:

代码语言:javascript
复制
 $.each(this.dTable, function (ind, val) {

        htmlApp = "<tr><td>" + val.product + "</td>... so on and so forth</tr>";
        $("invTable tbody").append(htmlApp);
    });

注意,我使用的是append而不是appendTo

最后..。invTable不是一个超文本标记语言元素,所以我猜它要么是一个类,要么是一个ID。如果它是一个类,你需要在选择器中指明:$(".invTable tbody")。如果是ID,则使用$("#invTable tbody")

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51004423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档