I believe this is what you're looking for:
jQuery
The first four lines contain the code that does the actual grabbing of the ULs. The rest is just to display the content of the matched ULs.
<script type="text/javascript">
$(document).ready(function() {
// The code that grabs the matching ULs
var ULsWithAll=$("ul").has(".item-info").filter( function(index) { // Grab all ULs that has at least one .item-info
var ChildrenOfUL=$(this).children("li"); // Grab the children
return ChildrenOfUL.length===ChildrenOfUL.has(".item-info").length; // Are all of them .item-info
});
$(ULsWithAll).each(function(){ // Output the ULs that were found
alert($(this).html());
})
});
</script>
HTML
<dl>
<dt>Items 1:</dt>
<dd>
<ul>
<li>Item 1-1<div class="item-info">...</div></li>
<li>Item 1-2<div class="item-info">...</div></li>
<li>Item 1-3<div class="item-info">...</div></li>
</ul>
</dd>
<dt>Items 2:</dt>
<dd>
<ul>
<li>Item 2-1<div class="item-info">...</div></li>
<li>Item 2-2<div class="item-info">...</div></li>
<li>Item 2-3<div class="item-info">...</div></li>
</ul>
</dd>
<dt>Items 3:</dt>
<dd>
<ul>
<li>Item 3-1<div class="item-info">...</div></li>
<li>Item 3-2<div class="item-info">...</div></li>
<li>Item 3-3<div>...</div></li>
</ul>
</dd>
</dl>
The above jQuery code will return the ULs for the first and second hit (the third one is a dud). Check it at http://jsfiddle.net/ksTtF/
Another example (without the alert): http://jsfiddle.net/vQxGC/