2009-07-06 3 views
1

Я использую jQuery для получения результатов из webservice (третья сторона не может измениться). Набор результатов что-то вроде:Использовать родительский узел не для детей - jQuery .each (function())

<result> 
<contactId>1234</contactId> 
<contactState>9</contactState> 
<contactStateSortOrder>5</contactStateSortOrder> 
    <address> 
    <addressId>568</addressId> 
    <contactId>9801</contactId> 
    </address> 
</result> 

Теперь я использую

$('result', xml).each(function() { 
    $("contactId", this).text(); 
    }); 

, чтобы получить идентификатор контакта, и делать то, что мне нужно сделать, однако конечный результат 12349801 все, что я хотел бы это 1234. Любые идеи?

Спасибо за участие

ответ

3

Изменить селектор. Чтобы получить 1234 в вашем примере, используйте result > contactId; чтобы получить 9801 использование address > contactId

Вы также можете сделать contactId:not(adress > contactId)

+0

Спасибо, работал с> ContactId :) –

+0

@Si Филипп : без проблем – geowa4

0

Либо это:

$('result > contactId', xml).each(function() { 
    $(this).text(); 
}); 

или это:

$('result', xml).each(function() { 
    $(this).children("contactId").text(); 
}); 
Смежные вопросы