| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 | 
							- <!DOCTYPE html>
 
- <html>
 
- <head>
 
-     <meta http-equiv="X-UA-Compatible" content="IE=edge">
 
-     <title>jsGrid - Data Manipulation</title>
 
-     <link rel="stylesheet" type="text/css" href="demos.css" />
 
-     <link href='http://fonts.googleapis.com/css?family=Open+Sans:300,600,400' rel='stylesheet' type='text/css'>
 
-     <link rel="stylesheet" type="text/css" href="../css/jsgrid.css" />
 
-     <link rel="stylesheet" type="text/css" href="../css/theme.css" />
 
-     <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.2/themes/cupertino/jquery-ui.css">
 
-     <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
 
-     <script src="http://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
 
-     <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script>
 
-     <script src="db.js"></script>
 
-     <script src="../src/jsgrid.core.js"></script>
 
-     <script src="../src/jsgrid.load-indicator.js"></script>
 
-     <script src="../src/jsgrid.load-strategies.js"></script>
 
-     <script src="../src/jsgrid.sort-strategies.js"></script>
 
-     <script src="../src/jsgrid.field.js"></script>
 
-     <script src="../src/fields/jsgrid.field.text.js"></script>
 
-     <script src="../src/fields/jsgrid.field.number.js"></script>
 
-     <script src="../src/fields/jsgrid.field.select.js"></script>
 
-     <script src="../src/fields/jsgrid.field.checkbox.js"></script>
 
-     <script src="../src/fields/jsgrid.field.control.js"></script>
 
-     <style>
 
-         .ui-widget *, .ui-widget input, .ui-widget select, .ui-widget button {
 
-             font-family: 'Helvetica Neue Light', 'Open Sans', Helvetica;
 
-             font-size: 14px;
 
-             font-weight: 300 !important;
 
-         }
 
-         .details-form-field input,
 
-         .details-form-field select {
 
-             width: 250px;
 
-             float: right;
 
-         }
 
-         .details-form-field {
 
-             margin: 30px 0;
 
-         }
 
-         .details-form-field:first-child {
 
-             margin-top: 10px;
 
-         }
 
-         .details-form-field:last-child {
 
-             margin-bottom: 10px;
 
-         }
 
-         .details-form-field button {
 
-             display: block;
 
-             width: 100px;
 
-             margin: 0 auto;
 
-         }
 
-         input.error, select.error {
 
-             border: 1px solid #ff9999;
 
-             background: #ffeeee;
 
-         }
 
-         label.error {
 
-             float: right;
 
-             margin-left: 100px;
 
-             font-size: .8em;
 
-             color: #ff6666;
 
-         }
 
-     </style>
 
- </head>
 
- <body>
 
-     <h1>Data Manipulation</h1>
 
-     <div id="jsGrid"></div>
 
-     <div id="detailsDialog">
 
-         <form id="detailsForm">
 
-             <div class="details-form-field">
 
-                 <label for="name">Name:</label>
 
-                 <input id="name" name="name" type="text" />
 
-             </div>
 
-             <div class="details-form-field">
 
-                 <label for="age">Age:</label>
 
-                 <input id="age" name="age" type="number" />
 
-             </div>
 
-             <div class="details-form-field">
 
-                 <label for="address">Address:</label>
 
-                 <input id="address" name="address" type="text" />
 
-             </div>
 
-             <div class="details-form-field">
 
-                 <label for="country">Country:</label>
 
-                 <select id="country" name="country">
 
-                     <option value="">(Select)</option>
 
-                     <option value="1">United States</option>
 
-                     <option value="2">Canada</option>
 
-                     <option value="3">United Kingdom</option>
 
-                     <option value="4">France</option>
 
-                     <option value="5">Brazil</option>
 
-                     <option value="6">China</option>
 
-                     <option value="7">Russia</option>
 
-                 </select>
 
-             </div>
 
-             <div class="details-form-field">
 
-                 <label for="married">Is Married</label>
 
-                 <input id="married" name="married" type="checkbox" />
 
-             </div>
 
-             <div class="details-form-field">
 
-                 <button type="submit" id="save">Save</button>
 
-             </div>
 
-         </form>
 
-     </div>
 
-     <script>
 
-         $(function() {
 
-             $("#jsGrid").jsGrid({
 
-                 height: "70%",
 
-                 width: "100%",
 
-                 editing: true,
 
-                 autoload: true,
 
-                 paging: true,
 
-                 deleteConfirm: function(item) {
 
-                     return "The client \"" + item.Name + "\" will be removed. Are you sure?";
 
-                 },
 
-                 rowClick: function(args) {
 
-                     showDetailsDialog("Edit", args.item);
 
-                 },
 
-                 controller: db,
 
-                 fields: [
 
-                     { name: "Name", type: "text", width: 150 },
 
-                     { name: "Age", type: "number", width: 50 },
 
-                     { name: "Address", type: "text", width: 200 },
 
-                     { name: "Country", type: "select", items: db.countries, valueField: "Id", textField: "Name" },
 
-                     { name: "Married", type: "checkbox", title: "Is Married", sorting: false },
 
-                     {
 
-                         type: "control",
 
-                         modeSwitchButton: false,
 
-                         editButton: false,
 
-                         headerTemplate: function() {
 
-                             return $("<button>").attr("type", "button").text("Add")
 
-                                 .on("click", function () {
 
-                                     showDetailsDialog("Add", {});
 
-                                 });
 
-                         }
 
-                     }
 
-                 ]
 
-             });
 
-             $("#detailsDialog").dialog({
 
-                 autoOpen: false,
 
-                 width: 400,
 
-                 close: function() {
 
-                     $("#detailsForm").validate().resetForm();
 
-                     $("#detailsForm").find(".error").removeClass("error");
 
-                 }
 
-             });
 
-             $("#detailsForm").validate({
 
-                 rules: {
 
-                     name: "required",
 
-                     age: { required: true, range: [18, 150] },
 
-                     address: { required: true, minlength: 10 },
 
-                     country: "required"
 
-                 },
 
-                 messages: {
 
-                     name: "Please enter name",
 
-                     age: "Please enter valid age",
 
-                     address: "Please enter address (more than 10 chars)",
 
-                     country: "Please select country"
 
-                 },
 
-                 submitHandler: function() {
 
-                     formSubmitHandler();
 
-                 }
 
-             });
 
-             var formSubmitHandler = $.noop;
 
-             var showDetailsDialog = function(dialogType, client) {
 
-                 $("#name").val(client.Name);
 
-                 $("#age").val(client.Age);
 
-                 $("#address").val(client.Address);
 
-                 $("#country").val(client.Country);
 
-                 $("#married").prop("checked", client.Married);
 
-                 formSubmitHandler = function() {
 
-                     saveClient(client, dialogType === "Add");
 
-                 };
 
-                 $("#detailsDialog").dialog("option", "title", dialogType + " Client")
 
-                     .dialog("open");
 
-             };
 
-             var saveClient = function(client, isNew) {
 
-                 $.extend(client, {
 
-                     Name: $("#name").val(),
 
-                     Age: parseInt($("#age").val(), 10),
 
-                     Address: $("#address").val(),
 
-                     Country: parseInt($("#country").val(), 10),
 
-                     Married: $("#married").is(":checked")
 
-                 });
 
-                 $("#jsGrid").jsGrid(isNew ? "insertItem" : "updateItem", client);
 
-                 $("#detailsDialog").dialog("close");
 
-             };
 
-         });
 
-     </script>
 
- </body>
 
- </html>
 
 
  |