0

強く型付けされた asp.net-mvc ビューがあり、モデルには . リンクプロパティ。

Linksは、 URLDescription、およびIDを持つlinkの配列です。

私はたくさんのリンクを持っています。すべてのリンクにはタグのリストがあり、それらのタグは次のように配置されています。

<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 は説明、「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」クラスがあるため、正確なリンクまたはインデックスをこの配列に渡して、ID フィールドをこの編集可能なメソッドに挿入するにはどうすればよいですか?

4

1 に答える 1

2

以下を置き換えて回避する必要があります。

Model.Links[0].ID  

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

横にトラバースするのは面倒くさいのでやめたほうがいいですが。「b」要素にIDを付けることができれば、次のように簡単です

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

...

$(this).attr("id")

また、HTML の id 属性は数字で始まるべきではないため、これらの ID について考える必要があるかもしれません!

于 2009-10-29T14:20:37.923 に答える