2010-11-18 30 views
1

Bir süredir büyük bir jQuery projesinde çalışıyorum ve XML ile ad alanlarını ayrıştırmaya çalışıncaya kadar her şey sorunsuz gidiyordu. Ben jQuery 1.4.2 kullanıyorum ve birkaç farklı solutions denedim:jQuery (veya JavaScript) ile ad alanları içeren XML ayrıştırma

$(xml).find('[nodeName=ns:blah]')... 
$(xml).find('ns\\:blah')... 

Ve jQuery.xmlns.js plugin çalıştı ama o da çalışıyor gibi görünmüyor.

<response xmlns:ns='http://example.com/ex/'> 
    <response>SUCCESS</response> 
    <action>QUERY</action> 
    <data> 
    <ns:blah>Trying to reach me!</ns:blah> 
    </data> 
</response> 

kimse tercihen jQuery veya çapraz tarayıcı JavaScript uygulamasını kullanarak bir çözümün biliyor mu:

XML

benzer biçimlendirilir?

DÜZENLEME: Whoops, kodda doğru şekilde kaçıyordum, sadece burada değil. Onu düzelttim.

cevap

1

Kişisel kaçış bu (ters eğik) gibi görünmelidir:

$(xml).find('ns\\:blah')... 

Örnek: jQuery son sürümünehttp://jsfiddle.net/cUhZH/

Upgrade. Adlandırılmış özelliklerin seçilmesiyle ilgili olarak 1.4.3 numaralı makalede bazı düzeltmelerin olduğuna inanıyorum.

+0

Örneğinizde çalışır, ancak kodumda değil. Kopyalama ve kodumu jsFiddle'a yapıştırmayı denedim ve iyi çalışıyor. – ravun

+0

Weird, bir test sayfası oluşturup jquery 1.4.2 içeriyorsa, ancak diğer geliştiricilerin kullandığı paketlenmiş jquery + eklentileri lib'i kullanıyorumsa işe yaramıyor. Sanırım 1.4.2 dediği gibi gerçekten kullanıp kullanmadıklarını anlamaya ihtiyacım var. – ravun

+0

@ravun - Sadece jQuery yüklenen bir * sürümüne sahip olduğunuzdan emin olmak istersiniz. Hangi sürümü çalıştırdığınızı test etmek için 'alert (jQuery.fn.jquery);' i deneyin ve size ne anlattığını görün. – user113716