Internet Explorer jquery: содержит проблему

Я пытаюсь разобрать простой XML-документ с помощью jQuery. Кто-нибудь знает, почему следующее отлично работает в Chrome и Firefox, но не в Internet Explorer (7 и 8)?

var selBunit = $("#bunit").val();
$(bunitXml).find('bunit bname:contains('+selBunit+')').parent().find('team')

Ниже приведен фрагмент xml. Итак, в основном я пытаюсь вернуть все элементы «команды» для выбранной бизнес-единицы («группы»).

<bunit>
<bname>Unit 1</bname>
<teams>
    <team>
        <name>Team 1</name>
        <jobtitles>
            <jobtitle approval="false">Jobtitle 1</jobtitle>
        </jobtitles>
    </team>
    <team>
        <name>Team 2</name>
        <jobtitles>
            <jobtitle approval="false">Jobtitle 2</jobtitle>
        </jobtitles>
    </team>                         
</teams>
</bunit>

Сначала я пытался

$(bunitXml).find('bunit bname:contains($("#bunit").val())').parent().find('team')

который вообще не работает. После некоторого поиска в Google я попробовал следующее:

var selBunit = $("#bunit").val();
$(bunitXml).find('bunit bname:contains('+selBunit+')').parent().find('team')

который возвращает все элементы команды в Chrome и Firefox, но не в Internet Explorer. Я не могу понять это. Я новичок в jQuery, поэтому я могу сделать это совершенно неправильно, поэтому любые предложения будут оценены. Огромное спасибо


person jul    schedule 12.02.2010    source источник


Ответы (1)


var selBunit = $("#bunit").val();
$(bunitXml).find('bunit bname:contains('+selBunit+')').parent().find('team')

Если я хорошо понимаю, selBunit - это строка, поэтому вы должны использовать:

var selBunit = $("#bunit").val();
$(bunitXml).find("bunit bname:contains('"+selBunit+"')").parent().find('team')

or

 $(bunitXml).find("bname:contains('" +selBunit+ "')").find('team');
person RafH    schedule 22.02.2010