odata-service.html 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  5. <title>jsGrid - OData Service Scenario</title>
  6. <link rel="stylesheet" type="text/css" href="demos.css" />
  7. <link href='http://fonts.googleapis.com/css?family=Open+Sans:300,600,400' rel='stylesheet' type='text/css'>
  8. <link rel="stylesheet" type="text/css" href="../css/jsgrid.css" />
  9. <link rel="stylesheet" type="text/css" href="../css/theme.css" />
  10. <script src="../external/jquery/jquery-1.8.3.js"></script>
  11. <script src="../src/jsgrid.core.js"></script>
  12. <script src="../src/jsgrid.load-indicator.js"></script>
  13. <script src="../src/jsgrid.load-strategies.js"></script>
  14. <script src="../src/jsgrid.sort-strategies.js"></script>
  15. <script src="../src/jsgrid.field.js"></script>
  16. <script src="../src/fields/jsgrid.field.text.js"></script>
  17. <script src="../src/fields/jsgrid.field.textarea.js"></script>
  18. <script src="../src/fields/jsgrid.field.number.js"></script>
  19. <style>
  20. .rating {
  21. color: #F8CA03;
  22. }
  23. </style>
  24. </head>
  25. <body>
  26. <h1>OData Service</h1>
  27. <div id="jsGrid"></div>
  28. <script>
  29. $(function() {
  30. $("#jsGrid").jsGrid({
  31. height: "auto",
  32. width: "auto",
  33. sorting: true,
  34. paging: false,
  35. autoload: true,
  36. controller: {
  37. loadData: function() {
  38. var d = $.Deferred();
  39. $.ajax({
  40. url: "http://services.odata.org/V3/(S(3mnweai3qldmghnzfshavfok))/OData/OData.svc/Products",
  41. dataType: "json"
  42. }).done(function(response) {
  43. d.resolve(response.value);
  44. });
  45. return d.promise();
  46. }
  47. },
  48. fields: [
  49. { name: "Name", type: "text", width: 100 },
  50. { name: "Description", type: "textarea", width: 200 },
  51. { name: "Rating", type: "number", width: 150, align: "center",
  52. itemTemplate: function(value) {
  53. return $("<div>").addClass("rating").append(Array(value + 1).join("&#9733;"));
  54. }
  55. },
  56. { name: "Price", type: "number", width: 100,
  57. itemTemplate: function(value) {
  58. return value.toFixed(2) + "$"; }
  59. }
  60. ]
  61. });
  62. });
  63. </script>
  64. </body>
  65. </html>