Py学习  »  Jquery

如何使用jquery从表中选择第一行

Frame • 4 年前 • 110 次点击  

我想在页面首次加载时从表数据中选择第一行。我的 $('#Home').on('click', '#tblStyles .HomeSelect', function () { 不打。请建议我这里我做错了。

报表视图

<ul class="nav nav-tabs">
            <li class="active"><a data-toggle="tab" href="#Home">Home</a></li>          
        </ul>
        <div class="tab-content">
            <div id="Home" class="tab-pane fade in active">
                @Html.Partial("~/Views/Home/Home.cshtml", Model.clsHome)
            </div>

        </div>

家景

<div class="panel panel-default">
        <table id="tblStyles" class="table table-hover">
            <tr class="no-hover" style="border-top:hidden">
                <th>
                    @Html.DisplayNameFor(m => m.ProductName)
                </th>            

            </tr>

            @foreach (var item in Model)
            {
                <tr class="HomeSelect" data-productcode="@item.ProductCode">

                    <td align="right">
                        @Html.DisplayFor(modelItem => item.ProductCode)
                    </td>

                </tr>
            }
        </table>
    </div>
            @using (Html.BeginForm("Home", "Home", FormMethod.Post, new { id = "Form" }))
        {
            <div id="mypartial"> </div>

        }

脚本

   $(document).ready(function () {             
            $('#Home').find('#tblStyles tr:first').addClass("selected").click();              
        });

     $('#Home').on('click', '#tblStyles .HomeSelect', function () {

            var id = $(this).data('productcode');
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/37904
 
110 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Shyju
Reply   •   1 楼
Shyju    5 年前

您的jQuery选择器 $('#Home').find('#tblStyles tr:first') 将给出第一个表行。这并不意味着它是CSS类的第一个表行 HomeSelect . 实际上,您的选择器将为您提供第一行,即表头(您在其中调用 DisplayNameFor 辅助方法。

你的 click 事件处理程序为具有 家庭选择 CSS类。因此,确保在调用第一个tr的click事件时,遵循相同的模式。

确保您正在调用 点击 使用javascript的事件 之后 连接Click事件处理程序。我建议您在jquery中连接任何事件处理程序 ready 事件。

$(function () {
    $('#Home').on('click', '#tblStyles .HomeSelect', function () {
        var id = $(this).data('productcode');
        alert(id);
    });

    // Invoke click on the first row with "HomeSelect" CSS class
    // The header row does not have that class.
    $('#Home').find('#tblStyles tr.HomeSelect:first').click();  
});