Элементы DOM с одинаковым идентификатором и jQuery - PullRequest
3 голосов
/ 04 июня 2010

Привет У меня есть несколько элементов с одинаковой структурой в моем приложении. Идентификатор второго элемента div зависит от идентификатора комментария в БД, который является уникальным. Существуют элементы с идентификаторами «voice_up» и «voice_down». Это повторяется для каждого комментария. Что происходит, как я уже упоминал, есть несколько комментариев. Я хочу выполнить запрос Ajax. Сначала эта структура функционирует должным образом, используя ajax, а остальное выполняет http-запрос. Кстати, я разрабатываю приложение rails и использую jQuery.

<div id="post_comment">
john<i> says </i> Comment<br/>

<div id="comment_10_div">
**<form action="/comments/vote_up" id="vote_up" method="post">**
         <div style="margin:0;padding:0;display:inline">
               <input name="authenticity_token" type="hidden" 
               value="w873BgYHLxQmadUalzMRUC+1ql4AtP3U7f78dT8x9ho=" />
         </div>
     <input id="Comment_place_id" name="Comment[post_id]" type="hidden" value="3" />
     <input id="Comment_id" name="Comment[id]" type="hidden" value="10" />
     <input id="Comment_user_id" name="Comment[user_id]" type="hidden" value="2" />
     <input name="commit" type="submit" value="Vote up" />
</form>

<label id="comment_10">10</label>

**<form action="/comments/vote_down" id="vote_down" method="post">**
        <div style="margin:0;padding:0;display:inline">
            <input name="authenticity_token" type="hidden" 
            value="w873BgYHLxQmadUalzMRUC+1ql4AtP3U7f78dT8x9ho=" />
        </div>
    <input id="Comment_place_id" name="Comment[place_id]" type="hidden" value="3" />

    <input id="Comment_id" name="Comment[id]" type="hidden" value="10" />
    <input id="Comment_user_id" name="Comment[user_id]" type="hidden" value="2" />
    <input name="commit" type="submit" value="Vote Down" />
</form>
</div>      

Можете ли вы помочь мне решить эту проблему Спасибо

Ответы [ 2 ]

4 голосов
/ 07 июня 2010

Расширяя то, что уже было сказано, способ, которым вы должны реализовать это:

<div id="comment_10" class="comment">
</div>

Затем вы можете выбрать все комментарии с помощью:

$('.comment')

или один комментарий с помощью:

$('#comment_10")
4 голосов
/ 04 июня 2010

Да, как уже упоминал Матти, по стандартам W3C идентификатор должен быть уникальным. Хороший обходной путь будет заключаться в добавлении db ID комментария, например, <input id="Comment_39127438"...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...