如何使用 jquery 将数据追加到表中

2023-12-30

我有一个 HTML 表:

<table id="tableOrderDetail" class="table-striped table-bordered" style="align: center; width: 100%;">
<thead>
  <tr>
    <th width="5%">Sr. No.</th>
    <th width="25%">Product Name</th>
    <th width="12%" class="center">No Of Carton</th>
    <th width="12%" class="center">Quantity</th>
    <th width="12%" class="center">Original Price</th>
    <th width="12%" class="center">Order Price</th>
    <th width="10%" class="center">Discount</th>
    <th width="12%" class="center">Total Price</th>
  </tr>
</thead>
  <tbody>
    <tr>
    <td width="25%" class="ProductName"></td>
    <td width="12%" class="NoOfCarton"></td>
    <td width="12%" class="ProductQuantity"></td>
    <td width="12%" class="OriginalPrice"></td>
    <td width="12%" class="OrderPrice"></td>
    <td width="10%" class="Discount"></td>
    <td width="12%" class="TotalPrice"></td>
</tr>
</tbody> 

现在我必须将所有数据附加到表中,我尝试如下:

            $.ajax({
                type: "POST",
                url: "../handlers/DisplaySpecificOrderDetail.ashx?OrderId=" + Orderid, //+ "tk=" + Date.toLocaleTimeString()
                data: "{ OrderId: " + Orderid + "}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                async: "true",
                cache: "false",
                success: function (data) {

                    $("#tableOrderDetail tbody").find("tr:gt(0)").remove();

                    $.each(data, function (i, v) {
                        if (i == 0) {
                            //setting the data in first row itself
                            setDataOnRow($("#tableOrderDetail tbody").find("tr").first(), v);
                        } else {
                            //clonning the first row and setting data over it and then appending in tbody
                            var clonnedRow = $($("#tableOrderDetail tbody").find("tr").first()).clone();
                            setDataOnRow(clonnedRow, v);
                            $("#tableOrderDetail tbody").append(clonnedRow);
                        }
                     });         
                   }); 

function setDataOnRow(rowObject, v) {
               // debugger
                $(rowObject).find(".ProductName").html(v.ProductName);
                $(rowObject).find(".NoOfCarton").html(v.NoOfCarton);
                $(rowObject).find(".ProductQuantity").html(v.ProductQuantity);
                $(rowObject).find(".OriginalPrice").html(v.OriginalPrice);
                $(rowObject).find(".OrderPrice").html(v.OrderPrice);
                $(rowObject).find(".Discount").html(v.Discount);
                $(rowObject).find(".TotalPrice").html(v.TotalPrice);
            }

至此,数据已成功绑定到表中。

但对于多个记录,它只能获取最后一条记录。(覆盖)
如何将所有行与表绑定?

EDIT 1:

I used .append()但它给了我一行中的两条记录..我怎样才能将它分开在不同的行中?

EDIT 2:这是我的处理程序:

public void ProcessRequest(HttpContext context)
    {
        try
        {
            context.Response.ContentType = "application/octet-stream";

            long OrderId;
            Result res = new Result();    
            long.TryParse(context.Request.QueryString["OrderId"].ToString(), out OrderId);

            JavaScriptSerializer TheSerializer = new JavaScriptSerializer();

            SpecificOrderDetailManagement specificordMgr = new SpecificOrderDetailManagement();

                res = specificordMgr.GetOrderDetailOrderID(OrderId);
                context.Response.Write(Newtonsoft.Json.JsonConvert.SerializeObject(res.ListObject));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        } 

Edit 3: Screen enter image description here


您可以动态地clone第一行存在于tbody进而append它回到表中,并包含更新的行数据,如下所示:

$(document).ready(function() {
  var testData = [{
    "ProductName": "AAA",
    "NoOfCarton": 10
  }, {
    "ProductName": "BBB",
    "NoOfCarton": 20
  }];

  $("#tableOrderDetail tbody").find("tr:gt(0)").remove(); //remove all old rows except first one

  $.each(testData, function(i, v) {

    if (i == 0) {
      //setting the data in first row itself
      setDataOnRow($("#tableOrderDetail tbody").find("tr").first(), v);

    } else {

      //clonning the first row and setting data over it and then appending in tbody
      var clonnedRow = $($("#tableOrderDetail tbody").find("tr").first()).clone();
      setDataOnRow(clonnedRow, v);

      $("#tableOrderDetail tbody").append(clonnedRow);

    }
  });

});

//set the data in row
function setDataOnRow(rowObject, v) {
  var test = v.ProductName;
  var NoOfCarton = v.NoOfCarton;
  $(rowObject).find(".ProductName").html(test);
  $(rowObject).find(".NoOfCarton").html(NoOfCarton);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table id="tableOrderDetail" class="table-striped table-bordered" style="align: center; width: 100%;">
  <thead>
    <tr>
      <th width="25%">Product Name</th>
      <th width="12%" class="center">No Of Carton</th>
    </tr>
  </thead>
  <tbody>
    <tr class="">
      <td width="25%" class="ProductName">test</td>
      <td width="12%" class="NoOfCarton">test</td>
    </tr>
  </tbody>

Note:为简单起见,我只显示 2 列。请根据您的列数进行修改。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 jquery 将数据追加到表中 的相关文章

随机推荐

  • 在多个提升组件之间共享服务

    我创建了两个单独提升的组件 在两个不同的视图中 并且我尝试在这两个组件之间共享一个独特的服务 单例 该服务用于操作这些组件之一 我的服务 Injectable export class ModalContainerService priva
  • 不允许 Nuget 和 Teamcity Agent 运行此配置

    我遇到了一个有趣的问题 我想使用 Teamcity 构建 nuget 包 我确实设置了非常简单的配置 干得好 JetBrains 但是我无法在我们的构建代理之一上运行它 该代理确实通过了配置的代理要求 但在其名称旁边显示以下内容 不允许运行
  • 如何在 IDEA 中从 Gradle 设置 checkstyle 配置

    我在 IDEA 中使用 Checkstyle 插件 我想为不同的模块设置不同的 checkstyle 配置 我使用 gradle 作为构建工具 版本 4 我想编写一个修改模块相应 iml 文件的任务 知道怎么做吗 我第一次尝试修改iml文件
  • 如何水平对齐跨度文本和输入元素

    我正在努力创建一个搜索表单 在这个搜索表单中 我使用了
  • CMake Eclipse 构建配置

    我想使用 CMake 生成 Eclipse CDT 项目 其中生成的 Eclipse 项目包含定义的构建类型作为 IDE 中的可选构建配置 例如 if CMAKE CONFIGURATION TYPES set CMAKE CONFIGUR
  • Networkx:使用公共函数进行边权重计算

    假设我有一个函数euc 2d graph n1 n2 计算同一图的两个节点之间的欧几里德距离 每个节点都有一个给定的pos x y 这是在图创建时分配的 NetworkX 提供了一个函数来获取图的所有边的总权重 即graph size we
  • 如何返回带有捕获的 unique_ptr 的 lambda [重复]

    这个问题在这里已经有答案了 使用这个 https stackoverflow com a 16968463 629530 https stackoverflow com a 16968463 629530 我可以在 lambda 中捕获 u
  • 密码自动完成功能不适用于我的网络应用程序(在 Firefox 中)

    我已经用 HTML 创建了一个登录提交表单 但由于某种原因 自动完成功能在 Firefox 中不起作用 这是 Firefox 中发生的情况 我提供用户名和密码 然后单击登录按钮 Firefox 会提示我是否要记住密码 我按 记住 并登录即可
  • Vagrant 来测试厨师食谱 - 但如何处理私人 git

    我使用 vagrant 来测试我的厨师食谱 问题是我已经克隆了我的私人存储库并且机器没有被认证 我如何自动对 boostrap Chef 进行 git 身份验证 我正在使用 vagrant ubuntu 11 10 with Chef Th
  • throw new TypeError('OAuth2Strategy 需要 clientID 选项'); }

    这是出现的错误 该怎么办 我创建了一个 socket io 聊天应用程序 这是一个使用 nodejs socket io 和 package json 的聊天应用程序 包 json dependencies body parser 1 15
  • 如果在构造函数中设置 DataContext,在调用 InitializeComponent() 之前还是之后设置它有什么关系吗?

    我有一个 WPF 窗口 它在构造函数中接受一些参数 然后我使用这些构造函数来设置窗口的状态 该构造函数过程的一部分是实例化我的视图模型类 然后将其设置为窗口DataContext 我的问题是我什么时候应该设置我的DataContext等于我
  • 在 Powershell 中捕获 Windows 窗体关闭事件

    我有一个窗口窗体 当我单击 Windows 窗体控制框的关闭 X 按钮时 我想显示一条消息或可能执行某些操作 下面是代码 void System Reflection Assembly LoadWithPartialName System
  • 你应该在 Github 上分叉还是分支? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 许多 github 存储库要求在每次重要的代码更改时创建一个分支 这与 git 中的分支完全相同 为什么github要引入forks 我喜欢 g
  • 为类变量赋值是为该对象的所有实例分配它

    我有一个带字典的课 我创建了该类的 n 个实例 当我 该字典中某个键上的值时 它会反映在我从该对象实例化的每个对象中 如何使该字典对于该类的每个实例都是唯一的 这是我创建对象的方法 for num in range 0 numOfPlaye
  • WAMP 服务器 Apache 无法启动

    有几个主题与此非常相似 但是 在查看了已解决的主题后 我没有遇到相同的问题 其余的也没有解决 我已经安装了新版本的 WAMP 没有对任何文件进行任何更改 打开 wamp 图标永远不会从红色变为绿色 放到网上就报错 无法执行菜单项 内部错误
  • 创建多行取决于特殊条件[重复]

    这个问题在这里已经有答案了 我的 data frame 如下 duration classlabel 100 W 120 1 390 2 30 3 30 2 150 3 30 4 60 3 60 4 30 3 120 4 30 3 120
  • 左侧 -> 右侧和顶部 -> 底部位置之间的 CSS 过渡

    是否可以使用 CSS 过渡在位置集之间设置动画left 0px to right 0px所以它一直穿过屏幕 我需要从上到下完成同样的事情 我是否卡住了计算屏幕宽度 对象大小 nav position absolute top 0px lef
  • 用Python创建图片蒙太奇

    我没有使用 python 的经验 但该脚本的所有者没有响应 当我将照片拖到此脚本上以创建蒙太奇时 它最终会切掉右侧边缘最后一张照片的一半 4张图片宽 1 2 3 4 5 6 7 8 图4和图8通常会减半 那里有图片的空间 虽然是空白的 我想
  • 选择哪种 JVM 进行 GC 黑客攻击?

    我有一个 GC 算法的设计 我想为 JVM 实现它 以允许进行基准测试 有没有人有过关于哪种实现可以轻松进行黑客攻击的经验 但哪种实现仍然具有内置的 GC 可以进行有意义的比较 编辑 我想要一个具有垃圾收集功能的 JVM 因为我想使用它收集
  • 如何使用 jquery 将数据追加到表中

    我有一个 HTML 表 table class table striped table bordered style width 100 thead tr th width 5 Sr No th th width 25 Product Na