asp.net mvc и jquery пытаются перейти в список - PullRequest
0 голосов
/ 29 октября 2009

У меня строго типизированное представление asp.net-mvc, а Модель имеет свойство. Ссылки .

Ссылки - это массив ссылка , который имеет URL , Описание и ID .

У меня есть куча ссылок. Каждая ссылка имеет список тегов, и эти теги расположены следующим образом:

<a id="98" href="www.ibm.com>IBM</a><b class='dblclick'>Tags: Software</b>
<a id="99" href="www.microsoft.com>MIcrosoft</a><b class='dblclick'>Tags: Software</b>
<a id="100" href="www.apple.com>Apple</a><b class='dblclick'>Tags: Software, Fruit</b>

(www.ibm.com - URL , IBM - Description , а "98" - ID )

У меня есть следующий код jquery:

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

        $(".dblclick").editable('<%=Url.Action("UpdateSettings","Links", new { site = Model.Links[0].ID }) %>', {
            tooltip: "Doubleclick to edit...",
            event: "dblclick",
            style: 'display: inline; width:400px;'
        });

    });

проблема, которую я не хочу иметь: Model.Links [0] .ID жестко запрограммирован, я хочу передать индекс в метод (в данном случае 98). Поскольку каждая ссылка имеет класс "dblclick", как передать точную ссылку или индекс в этот массив, чтобы я мог вставить поле идентификатора в этот редактируемый метод?

1 Ответ

2 голосов
/ 29 октября 2009

Вам следует уйти с заменой:

Model.Links[0].ID  

С

$(this).prev("a").attr("id")

Хотя было бы лучше, если бы вам не приходилось перемещаться вбок, поскольку это должно вызывать проблемы. Если бы вы могли поместить идентификатор в элемент "b", это было бы так же просто, как

<a id="98" href="www.ibm.com>IBM</a><b class="dblclick" id="98">Tags: Software</b>

...

$(this).attr("id")

Также вам может понадобиться подумать об этих идентификаторах, поскольку атрибуты HTML-идентификаторов не должны начинаться с цифры!

...