2016-08-23 56 views
0

我已經在這裏看到了幾個關於如何做到這一點的例子,併成功地實現了其他使用屬性的例子。這次我給了XML沒有屬性,我試圖找出如何從節點值而不是屬性填充我的選擇列表。我不斷收到對象而不是文本。我在這裏做錯了什麼?使用jQuery從XML中填充選擇框

代碼:

var code_data; 
$.get('Book.xml', function (data) { 
    code_data = data; 
    var that = $('#BookDropdown'); 
    $('Book', code_data).each(function() { 
     $('<option />', { 
      text: $('BookName').val('label'), 
      value: $('BookID').val('value') 
     }).appendTo(that); 
    }); 
}, 'xml'); 

XML:

<BookList> 
    <Book> 
    <BookName>Book One</BookName> 
    <BookID>1</BookID> 
    </Book> 
    <Book> 
    <BookName>Book Two</BookName> 
    <BookID>2</BookID> 
    </Book> 
    <Book> 
    <BookName>Book Three</BookName> 
    <BookID>3</BookID> 
    </Book> 
    <Book> 
    <BookName>Book Four</BookName> 
    <BookID>4</BookID> 
    </Book> 
    <Book> 
    <BookName>Book Five</BookName> 
    <BookID>5</BookID> 
    </Book> 
</BookList> 

回答

0

您正在訪問BookNameBookID是錯誤的方式。 。 。請使用以下代碼。 `

var code_data; 
    $.get('Book.xml', function(data) { 
    code_data = data; 
    var that = $('#BookDropdown'); 
    $('Book', code_data).each(function() { 
     $('<option />', { 
     text: $('BookName',this).text(), 
     value: $('BookID',this).text() 
     }).appendTo(that); 
    }); 
    }, 'xml'); 

`

+0

啊啊啊我明白了!謝謝你Ravikiran! – DJTronix