只需单击即可获取表行数据

时间:2013-06-28 02:55:49

标签: jquery html-table

我有一张桌子,我希望允许用户点击桌子上的任何元素来获取数据行。我该怎么做?

例如,在我看来,我有一张这样的表。

      <table class="myTable">
      :     <tr class="table">
                <th class="table">
                    Client ID
                </th>
                <th class="table">
                    Client Name
                </th>
                <th class="table">
                    Client Address
                </th>
            </tr>

当我运行项目时,我会得到类似的结果:

enter image description here

如果用户点击列客户名称:BBB。它将有一个弹出窗口说:您好,您已选择客户ID:002,客户名称:BBB,客户端添加:xxxxx。

用户可以点击所有列,它仍然会在弹出窗口中返回整行数据。

怎么做?请帮忙。

HTML:         @model IEnumerable     @ {         ViewBag.Title =“客户”;         Layout =“〜/ Views / Shared / _Layout.cshtml”;     }

<div class="body">

<div class="outer">
    <div class="inner">
        <table class="myTable">
            <tr class="table">
                <th class="table">
                    Client Name
                </th>
                <th class="table">
                    Client Code
                </th>
                <th class="table">
                    Client Address
                </th>
                <th class="searchTable">
                    Client Lead Partner
                </th>
            </tr>
            @foreach (var i in Model)
            {
                <tr class="myTable">
                    <td class="table">@i.ClientName
                    </td>
                    <td class="table">@i.ClientCode
                    </td>
                    <td class="table">@i.ClientAddress
                    </td>
                </tr>
            }
        </table>
    </div>
</div>

1 个答案:

答案 0 :(得分:12)

你可以这样做:

$("tr.myTable").click(function() {
    var tableData = $(this).children("td").map(function() {
        return $(this).text();
    }).get();

    console.log(tableData);
});

返回一个很好的数据数组,然后你可以按照你想要的方式显示它。

演示:http://jsfiddle.net/Sc5N7/