2013-06-13 2 views
0

XML "Item"노드 # Option_Base-Shirt와 # Option_Open-Main-Fabric-Collar에서 만든 두 개의 div가 있습니다. # Base-Shirt는 하나의 sub div를 가지며 # Option_Open-Main-Fabric-Collar는 두 개의 sub div를 가질 수 있도록이 두 div에 "Sub"div가 채워지기를 원합니다. 현재 각 Item div에는 세 개의 하위 div가 모두 있습니다.올바른 노드를 얻는 XML

XML

<Item name="None" title="Base-Shirt" alt="jpg"> 
    <Sub name="Pique" title="Open-Main-Fabric-Collar" alt="png"></Sub> 
</Item> 

<Item name="Pique" title="Open-Main-Fabric-Collar" alt="png"> 
    <Sub name="Jersey" title="Outside-Pocket-Left" alt="png"></Sub> 
    <Sub name="Main" title="Pocket" alt="png"></Sub> 
</Item> 

자바 스크립트 나는 이런 식으로 뭔가해야한다고 생각하지만 여전히 각 항목의 DIV에 세 된 div를두고

//Add Subs to Option div 
$(document).find("Sub").each(function(){ 
    for (var i=0; i<=NumberItems; i++) { 
    $("#Option_"+ItemNames[i]) 
     .append('<div class="Sub" id="' + $(this) 
     .attr('title') +'"></div>'); 
    } 
}); 

:

//Add Subs to Option div 
$(document).find("Item").each(function(){ 
    for (var i=0; i<=NumberItems; i++) { 
    $(this).find("Sub").each(function(){ 

      $("#Option_"+ItemNames[i]).append('<div class="Sub" id="' + $(this).attr('title') +'"></div>'); 

    }); 
    } 
}); 

게토 XML :

$(document).ready(function(){ 
// Load XML 
$.ajax({ 
    url: 'data.xml', 
    dataType: "xml", 
    success: parse, 
    error: function(){alert("Error: Something wrong with XML");} 
}); 

function parse(document){ 

//Get all item names Var=ItemNames (Base_Shit, Collar...) 
$(document).find("Item").each(function(){ 
+1

그리고 문제/질문은 무엇입니까? – Ohgodwhy

+0

어디에서이 XML을 가져 오나요? 'document'를 사용하여 XML 파일에 jQuery를 포함 시켰거나 XML을 문서에 포함시킨 것 같습니다. – adeneo

+0

기본 셔츠 div에는 하나의 sub div가 있어야하고 Open-Main-Fabric-Collar div에는 두 div가 있어야하며 둘 다 현재 divs가 세 개 있습니다. $ (document) .find (item) .children ("Sub")와 같은 것을 할 수있는 곳이 있습니까? 각각 (function() { – user2238083

답변

0

이 코드는 함수 내에서 함수 div를 생성하고 있습니다. 죄송합니다. 아마도 제 질문을 잘 설명하지 않았을 것입니다.

$(document).find("Item").each(function(){ 
    $(".Button").append('<div class="Item" id="' + $(this).attr('title') +'" name="' + $(this).attr('name') +'" alt="' + $(this).attr('alt') +'"><span>'+$(this).attr('title').replace(/\-/g, ' ')+'</span><div class="Fabric" id="Fabric_' + $(this).attr('title') +'"></div><div id="Option_' + $(this).attr('title') +'" class="Option"></div></div>'); 

    $(this).find("Sub").each(function(){ 
      $("#Option_"+$(this).parent().attr('title')).append('<div class="Sub" id="' + $(this).attr('title') +'"></div>'); 
    }); 


}); 
관련 문제