Advertisement
marungsha

Backbone

Feb 14th, 2015
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Just a Page</title>
  6. <script src="js/jquery-1.11.1.min.js"></script>
  7. <script src="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.js"></script>
  8. <script src="//underscorejs.org/underscore.js" ></script>
  9. <script src="//backbonejs.org/backbone-min.js" ></script>
  10.  
  11.  
  12.  
  13. </head>
  14.  
  15. <body>
  16. <div class="container">
  17. <h1>Home Page</h1><hr>
  18. <div class="page"></div>
  19. </div>
  20. </body>
  21. <script type="text/template" id="songlist_template">
  22.  
  23. <%
  24. _.each(songs, function(songs){ %>
  25. <%= songs.get("name") %>
  26. <%
  27. });
  28. %>
  29. <h1>Loaded</h1>
  30. </script>
  31.  
  32. <script>
  33. var Song =Backbone.Model;
  34. var Songs=Backbone.Collection.extend({
  35. model: Song,
  36. url:'/data/file.json',
  37. parse: function (response) {
  38. return response
  39. }
  40. });
  41.  
  42. var SongList=Backbone.View.extend({
  43. el:'.page',
  44. render: function(){
  45. var that=this;
  46. var songs=new Songs();
  47. songs.fetch({
  48. success:function (songs){
  49.  
  50. var temp=_.template($("#songlist_template").html());
  51. var html=temp({songs : songs});
  52. console.log(Songs);
  53. that.$el.html(html);
  54. },
  55. error: function (collection, response, options) {
  56. alert("error!! "+response.responseText);
  57. }
  58. })
  59. }
  60. });
  61.  
  62. var Router=Backbone.Router.extend({
  63. routes:{
  64. '': 'home'
  65. }
  66. });
  67.  
  68. var song=new SongList();
  69.  
  70. var router=new Router();
  71. router.on('route:home',function(){
  72. song.render();
  73. });
  74. Backbone.history.start();
  75.  
  76. </script>
  77. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement