0
function getData(url) {
$.getJSON(url, function(result) {
$('#formNav ul').append('<ul/>')
$.each(result, function() {
var list = $('#formNav li'),
listItem = $('<li/>'),
html = listItem.append($('<h5/>').text(this.name));
$.each(this.items, function() {
listItem.append($('<a />').attr('href', this.id).text(this.name))
});
list.append(html)
});
});
};
$(function(){
var Menu = {
$menu: $('.config-nav #formNav'),
$trades : $(".config-nav select#tradesmanList"),
$skills : $(".config-nav select#jobList"),
init: function(){
var $menu = Menu.$menu;
// Set menu up
$menu.children("li").addClass('closed');
$menu.find(".js-reveal").hide();
Menu.$skills.attr("disabled", "disabled");
Menu.$trades.on("change", function($skills){
Menu.$skills.removeAttr("disabled");
});
// bind to click on the item...
$menu.on("click", "h4", this.toggle);
},
toggle: function() {
// Toggle the hide show of the drill down menu
var $this = $(this),
$category = $this.parent();
console.log($this.parent().index());
var data = getData("test.json");
$category.addClass("loading").toggleClass("open");
$this.next(".reveal").delay(100).toggle(0, function(){
$category.Data;
$category.removeClass("loading");
});
}
};
Menu.init();
});
json 데이터를 반환하는 함수가 있습니다. 그런 다음 데이터를 표시하기 위해 Menu 함수에서이 함수를 호출합니다. 그러나 버튼을 클릭 할 때마다 데이터가 생성되고 대신 데이터를 표시하고 싶습니다. 다시 한 번 클릭하면 데이터가 숨겨 집니까? 누구든지 위대 할 조언이 있다면. 감사합니다. . 당신은 토글 함수를 호출 이제까지 당신의 봐 ... 왜 토글 함수 외부에 GetData 메서드를 이동하고 대신하지 않는 기능을 초기화하기 위해 이동jquery의 버튼에서 바인딩 해제를 제거 하시겠습니까?
var data = getData("test.json"); and then use it to populate the list..
를 사용하여 데이터를 얻을 수가
나는 선 앞에 // 항목을 클릭하여 바인딩했습니다. ... $ menu.on ("click", "h4", this.toggle); 하지만 여전히 데이터를 반복하는 것처럼 보입니까? 토글 기능에서 여전히 category.data를 호출합니까? 감사 – user1692118