$ селектор, чтобы получить идентификатор - PullRequest
0 голосов
/ 06 апреля 2011

У меня есть это:

<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>

КАК 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>

Вопрос, который я хотел бы, когда я нажимаю на выбранную ссылку, отправляю соответствующий идентификатор в качестве аргумента в / Customer / Select (будет использоваться в моем контроллере)

Есть идеи?

Спасибо

Ответы [ 3 ]

1 голос
/ 06 апреля 2011

Вы можете сделать это проще:

$(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; является родным js для получения идентификатора DOM
и вы отправляете элементы post как 2-й var в $.post call

1 голос
/ 06 апреля 2011

Несмотря на то, что вы можете , действительно, используйте $(this).attr('id') для получения идентификатора, это немного быстрее и требует меньше усилий, если использовать простой и встроенный в JavaScript this.id.

0 голосов
/ 06 апреля 2011

Вы можете использовать this.id ( Спасибо, Дэвид )

<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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...