소스 검색

handle save radio type in UI

Chris Mullins 8 년 전
부모
커밋
4ecc67dd10
1개의 변경된 파일12개의 추가작업 그리고 14개의 파일을 삭제
  1. 12 14
      data/web/index.html

+ 12 - 14
data/web/index.html

@@ -242,7 +242,7 @@
         Object.keys(val).forEach(function(k) {
           var field = $('#settings input[name="' + k + '"]');
 
-          if (field.length > 0) {
+          if (field.length > 0 && field.attr('type') === 'text') {
             field.val(val[k]);
           }
         });
@@ -547,19 +547,16 @@
           elmt += '<div class="field-help" data-help-text="' + FORM_SETTINGS_HELP[k] + '"></div>';
         }
 
-        if(k === "radio_interface_type")
-        {
-          elmt += '<div class="btn-group" id="radiointerface" data-toggle="buttons">' +
+        if(k === "radio_interface_type") {
+          elmt += '<div class="btn-group" id="radio_interface_type" data-toggle="buttons">' +
             '<label class="btn btn-secondary active">' +
-            '<input type="radio" name="radiointerface_nRF" autocomplete="off" data-value="nRF24" > nRF24' +
+              '<input type="radio" id="nrf24" name="radio_interface_type" autocomplete="off" value="nRF24" /> nRF24' +
             '</label>'+
             '<label class="btn btn-secondary">' +
-              '<input type="radio" name="radiointerface_PL1167" autocomplete="off" data-value="PL1167/LT8900/8910/8920" > PL1167/LT8900/8910/8920' +
+              '<input type="radio" id="lt8900" name="radio_interface_type" autocomplete="off" value="LT8900" /> PL1167/LT8900' +
             '</label>' +
           '</div>';
-        }
-        else
-        {
+        } else {
           elmt += '<input type="text" class="form-control" name="' + k + '"/>';
           elmt += '</div>';
         }
@@ -572,10 +569,13 @@
         var obj = {};
 
         FORM_SETTINGS.forEach(function(k) {
-          
-            obj[k] = $('#settings input[name="' + k + '"]').val();
-          
+          var elmt = $('#settings input[name="' + k + '"]');
 
+          if (elmt.attr('type') === 'radio') {
+            obj[k] = elmt.filter(function() { return $(this).is(':checked'); }).val();
+          } else {
+            obj[k] = elmt.val();
+          }
         });
 
         // pretty hacky. whatever.
@@ -594,8 +594,6 @@
             data: JSON.stringify(obj)
           }
         );
-        //console.log(obj);
-        //console.log(JSON.stringify(obj));
 
         e.preventDefault();
         return false;