オブジェクト配列を展開してアコーディオン naokichick Follow 2010-09-03 19:36:50 License: MIT License Fork4 Fav0 View2790 もっと良い書き方があったら教えてください。 9/3 19:08 追記 ミスってコード消しちゃったので書き直しました Play Stop Reload Fullscreen Smart Phone Fork tree Readme JavaScript 29 lines HTML 1 lines CSS 24 lines もっと良い書き方があったら教えてください。 9/3 19:08 追記 ミスってコード消しちゃったので書き直しました オブジェクト配列を展開してアコーディオン jQuery v1.4.2 var users = [ {userId:"11111", name:"hoge tarou"}, {userId:"22222", name:"fuga hanako"}, {userId:"33333", name:"piyo jirou"} ]; $.each(users, function(i, user){ $("<div class='user'></div>").attr("id", user.userId).appendTo($("#container")) //.title .append( $("<div class='title'></div>").text("ID:" + user.userId).click(function(){ $(this).next().toggle(); }).append( $("<a href='#'>delete</a>").click(function(){ var root = $(this).parent().parent(); alert("delete/userId=" + root.attr("id")); root.hide("slow"); return false; }) ) ) //.content .append( $("<div class='content'></div>").text(user.name).css("display","none") ); }); <div id="container"></div> オブジェクト配列を展開してアコーディオン body { background-color: #DDDDDD; font: 30px sans-serif; } div { border: 1px solid black; margin: 5px; } div.user { background-color: #FFFFFF; } div.title { background-color: #FFDDDD; } div.content { background-color: #DDFFDD; } a { font-size: 20px; margin-left: 10px; } もっと良い書き方があったら教えてください。 9/3 19:08 追記 ミスってコード消しちゃったので書き直しました var users = [ {userId:"11111", name:"hoge tarou"}, {userId:"22222", name:"fuga hanako"}, {userId:"33333", name:"piyo jirou"} ]; $.each(users, function(i, user){ $("<div class='user'></div>").attr("id", user.userId).appendTo($("#container")) //.title .append( $("<div class='title'></div>").text("ID:" + user.userId).click(function(){ $(this).next().toggle(); }).append( $("<a href='#'>delete</a>").click(function(){ var root = $(this).parent().parent(); alert("delete/userId=" + root.attr("id")); root.hide("slow"); return false; }) ) ) //.content .append( $("<div class='content'></div>").text(user.name).css("display","none") ); }); <div id="container"></div> body { background-color: #DDDDDD; font: 30px sans-serif; } div { border: 1px solid black; margin: 5px; } div.user { background-color: #FFFFFF; } div.title { background-color: #FFDDDD; } div.content { background-color: #DDFFDD; } a { font-size: 20px; margin-left: 10px; } use an iframe compat browser, deer Tweet QR code Embed Design view Code view <script type="text/javascript" src="http://jsdo.it/blogparts/wFtE/js?view=design"></script><p class="ttlBpJsdoit" style="width: 465px; margin: 0; text-align: right; font-size: 11px;"><a href="http://jsdo.it/naokichick/wFtE" title="オブジェクト配列を展開してアコーディオン">オブジェクト配列を展開してアコーディオン - jsdo.it - share JavaScript, HTML5 and CSS</a></p> zip tags question Tweet twitter Tags question Forked sort new page view favorite forked forked: オブジェクト配列を展開してアコーディオン naokichick 00 290views 0/0/0 question forked from: オブジェクト配列を展開してアコーデ.. c.matumura 00 238views 30/1/24 forked from: オブジェクト配列を展開してアコーデ.. dennenn0318 00 380views 30/1/24 forked from: オブジェクト配列を展開してアコーデ.. GeckoTang 00 563views 57/2/24 1 2NEXT>>