0

私は次のコードを持っています:

<input pid="hidVoteKey" type="hidden" value="0" />
    <ul id="mainPostList" class="verticalList">
        @foreach (var postViewModel in Model.Posts)
        {
            <li><div class="voteCon">...</div></li>
        }
    </ul>

次に、クラスvoteConですべての要素をループするjqueryがあり、次のように親入力を取得しようとします。

$(".voteCon").each(function () {
     InitVoteControl($(this), $(this).parent("input[pid='hidVoteKey']").val());
 });

問題は、隠しフィールドが見つからないことです。

この場合、voteConには上/下ボタンが含まれており、ajax呼び出しを行うためにここにバインドされたJavaScript関数がいくつかあります。同じページに上記のような複数のリストがありますが、すべてに異なるhidVoteKeyがあります。

4

2 に答える 2

1

の親(または祖先)ではない<input>ため、は見つかりません。これは、の祖先である、(の兄弟)と同じレベルにあります。あなたはこれを行うことができます:<div class="voteCon"><ul><div>

$(this).closest('ul').prev('input[pid="hidVoteKey"]').val()
于 2013-01-18T21:13:34.153 に答える
0

使用してからhiddenと入力しないでください。インラインstyle="display:none;"を使用できます。

于 2013-01-18T21:13:59.063 に答える