在mvc 4 asp.net中使用jquery在表中获取选定的行值

时间:2013-12-04 05:36:40

标签: jquery asp.net-mvc

我使用jquery来开发表格,我需要使用下面显示的点击事件示例获取特定的行值:

Jquery的:

$(document).ready(function () {

    $('#UsertTypeName').change(function () {

        $.get('/Home/Userdetails/' + $('#UsertTypeName').val(), function (data) {

            var items = "<table><tr><th>Name</th><th>Email_id</th><th>UserType</th><th colspan='2'>Actions</th></tr>";

            $.each(data, function (i, count) {

                items += "<tr><td >" + count.FirstName + "</td><td class="+'test'+">" + count.EmailId + "</td><td>" + count.UsertTypeName + "</td><td>" + '<input type="Submit" value="Edit" class="editdata" />' + "</td><td>" +'<input type="submit" Value="Delete" id="deldata">' + "</td></tr>";
            });

            $('#rdata').html(items);
            items += "</table>";

            $('.editdata').click(function () {
                alert("edit working");
                var url = "/Home/Edit/";
                $.ajax({
                    type: "post",
                    url: url,
                    data: $('.test').val(),
                    success: function (data) {
                        $('#testing').html(data)
                    }
                });

            });

        });
    });

});

我尝试使用。$ ajax获取电子邮件值,但它只返回空值

enter image description here

我无法找到我错过价值的地方..你能帮助我吗?谢谢你。

1 个答案:

答案 0 :(得分:0)

如果您希望得到count.EmailId值,这听起来像您想要的那样,当有人点击同一行中的<input type="Submit" value="Edit" class="editdata" />时,您可以使用jQuery查找父{{1}然后找到包含数据的<tr>,而不引用类<td>,这将返回一个数组。像这样的东西:

.test

这会将第二个var emailId = $(this).parent('td').parent('tr').find('td:eq(1)').text(); 与用户点击的<td>放在同一行,并将列中的文字存储为input

emailId

您的代码中存在设计问题,我也想指出。预计您的表格在其正文中会有多行, $('.editdata').click(function () { alert("edit working"); var emailId = $(this).parent('td').parent('tr').find('td:eq(1)').text(); var url = "/Home/Edit/"; $.ajax({ type: "post", url: url, data: emailId, success: function (data) { $('#testing').html(data) } }); 会导致多个元素<input type="submit" Value="Delete" id="deldata">作为其ID,当您尝试将事件处理程序附加到其中时会导致一些令人头疼的问题ID,因为ID字段应该是唯一的。