$ selector来获取id

时间:2011-04-05 20:15:32

标签: jquery asp.net-mvc post

我有这个:

<table>
@foreach(var foo in Model.List)
{
    <tr>
        <td><a href="#" class="MnuCustomerSelect" id="@foo.Id">Select</a></td>
        <td>@foo.Id</td>
        <td>@foo.Code</td>
        <td>@foo.LastName</td>
        <td>@foo.FirstName</td>
    </tr>
}
</table>

AS jQuery:

<script language="javascript" type="text/javascript">
    $(document).ready(function () {

        $(".MnuCustomerSelect").click(function () {

            var jqxhr = $.post("/Customer/Select", function (data) {
                $(this).Id();
            })
            .success(function () { })
            .error(function () { })
            .complete(function () { });

        });
    });
</script>

问题,我想点击所选链接时,将相应的id作为参数发送到/ Customer / Select(将在我的控制器中使用)

有什么想法吗?

谢谢,

3 个答案:

答案 0 :(得分:1)

你可以做得更轻松:

$(document).ready(function () {

    $(".MnuCustomerSelect").click(function () {

        var jqxhr = $.post("/Customer/Select", {id: this.id}, function (data) {
            //do something with data
        })
        .success(function () { })
        .error(function () { })
        .complete(function () { });

    });
});

this.id;是获取DOM ID的本地js 并且你发送post元素作为$.post调用中的第二个var

答案 1 :(得分:1)

虽然你可以,但确实使用$(this).attr('id')来检索id,使用简单的JavaScript本地代码会更快,更少工作{{1} }。

答案 2 :(得分:0)

您可以使用this.id感谢David

<script language="javascript" type="text/javascript">
    $(document).ready(function () {

        $(".MnuCustomerSelect").click(function () {

            var jqxhr = $.post("/Customer/Select",{ id: this.id }, function (data) {

            })
            .success(function () { alert('Success!'); })
            .error(function () { alert('Error!'); })
            .complete(function () { alert('Complete!'); });

        });
    });
</script>