Конвертировать элемент jQuery в обычный элемент dom

то, о чем вы просите, напрямую не поддерживается, но может быть достигнуто путем добавления другого шага фильтра после возвращения запроса.

во-первых, .populate( 'tags', null, { tagName: { $in: ['funny', 'politics'] } } ) определенно то, что вам нужно сделать, чтобы отфильтровать теги документы. то после возвращения запроса вам нужно будет вручную отфильтровать документы, у которых нет документов tags, которые соответствуют критериям заполнения. что-то вроде:

query....
.exec(function(err, docs){
   docs = docs.filter(function(doc){
     return doc.tags.length;
   })
   // do stuff with docs
});
13
задан Adrien Be 12 June 2014 в 11:10
поделиться

3 ответа

Вы можете ссылаться на элемент DOM с помощью .get (0) или [0], например $ ('# foo') [0] при условии, что существует только один.

27
ответ дан 1 December 2019 в 07:19
поделиться
$('#a')[0]

// ой, мой ответ слишком короткий

5
ответ дан 1 December 2019 в 07:19
поделиться

Это то, для чего метод get () был разработан командой JQuery, примите во внимание :

var elem = $('#a')[0];

Или

var elem1 = $('#a').get(0);
var elem2 = document.getElementById('a');
alert(elem1 === elem2);

или более длинная версия:

<!DOCTYPE HTML>
<html>
<body>   
<a id='a'></a>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
  <script>

    var elem1 = $('#a').get(0);
    var elem2 = document.getElementById('a');
    alert(elem1 === elem2);

  </script>  
</body>
</html>
5
ответ дан 1 December 2019 в 07:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: