Как я могу получить данные формы с JavaScript/jQuery?

var results = [];

var json = {
"stores": [
  {
    "storeArea": "area1",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 1082220.3945979946,
        "girlsTotal": 9585.8794674401543
      },
      {
        "date": "2018-11-01",
        "boysTotal": 1056643.6756958894,
        "girlsTotal": 11018.898987932616
      },
      {
        "date": "2018-12-01",
        "boysTotal": 1022322.1218654147,
        "girlsTotal": 11954.748339502334
      }
    ]
  },
  {
    "storeArea": "area2",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 91336.329372028267,
        "girlsTotal": 0
      },
      {
        "date": "2018-11-01",
        "boysTotal": 78130.417193652393,
        "girlsTotal": 0
      },
      {
        "date": "2018-12-01",
        "boysTotal": 100755.62136033915,
        "girlsTotal": 0
      }
    ]
  },
  {
    "storeArea": "area3",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 66604.417069221658,
        "girlsTotal": 0
      },
      {
        "date": "2018-11-01",
        "boysTotal": 63882.129662868538,
        "girlsTotal": 0
      },
      {
        "date": "2018-12-01",
        "boysTotal": 108781.84734382466,
        "girlsTotal": 0
      }
    ]
  },
  {
    "storeArea": "area4",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 0,
        "girlsTotal": 1452.6775522557543
      },
      {
        "date": "2018-11-01",
        "boysTotal": 0,
        "girlsTotal": 2366.423254655545
      },
      {
        "date": "2018-12-01",
        "boysTotal": 0,
        "girlsTotal": 3485.5840149129986
      }
    ]
  },
  {
    "storeArea": "area5",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 3237887.746893588,
        "girlsTotal": 0
      },
      {
        "date": "2018-11-01",
        "boysTotal": 3218724.4935297123,
        "girlsTotal": 0
      },
      {
        "date": "2018-12-01",
        "boysTotal": 2925562.2916941536,
        "girlsTotal": 0
      }
    ]
  },
  {
    "storeArea": "area6",
    "totalStore": [
      {
        "date": "2018-10-01",
        "boysTotal": 291293.35185208195,
        "girlsTotal": 0
      },
      {
        "date": "2018-11-01",
        "boysTotal": 171962.47103846565,
        "girlsTotal": 0
      },
      {
        "date": "2018-12-01",
        "boysTotal": 95615.439855929668,
        "girlsTotal": 0
      }
    ]
  }
]
}

var i = 0;

for (i=0; i<json.stores.length; i++) {
  var store = json.stores[i];

  var j = 0;

  var boysTotal = 0;
  var girlsTotal = 0;

  var result = [];

  for (j=0; j<store.totalStore.length; j++) {
    boysTotal += parseFloat(store.totalStore[j]['boysTotal']);
    girlsTotal += parseFloat(store.totalStore[j]['girlsTotal']);
  }

  results[i] = [];
  results[i][0] = store.storeArea;
  results[i][1] = boysTotal + girlsTotal;
  //results[i][1] = boysTotal;
  //results[i][2] = girlsTotal;

}

console.log(results);

371
задан Penny Liu 17 September 2019 в 05:47
поделиться

4 ответа

$('form').serialize() //this produces: "foo=1&bar=xxx&this=hi"

демонстрация

408
ответ дан 23 November 2019 в 00:04
поделиться

$( "form" ).bind( "submit", function(e) {
    e.preventDefault();
    
    console.log(  $(this).serializeObject() );    

    //console.log(  $(this).serialize() );
    //console.log(  $(this).serializeArray() );

});


$.fn.serializeObject = function() {
    var o = {};
    var a = this.serializeArray();

    $.each( a, function() {
        if ( o[this.name] !== undefined) 
        {
            if ( ! o[this.name].push ) 
            {
                o[this.name] = [o[this.name]];
            }
            o[this.name].push(this.value || '');
        }
        else 
        {
            o[this.name] = this.value || '';
        }
    });

    return o;
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<form>

    <input type="radio" name="foo" value="1" checked="checked" />
    <input type="radio" name="foo" value="0" />
    <input name="bar" value="xxx" />

    <select name="this">
        <option value="hi" selected="selected">Hi</option>
        <option value="ho">Ho</option>
    </select>

    <input type="submit" value="Submit" />

</form>

Codepen

1
ответ дан 23 November 2019 в 00:04
поделиться
$('#myform').serialize();
15
ответ дан 23 November 2019 в 00:04
поделиться
$("#form input, #form select, #form textarea").each(function() {
 data[theFieldName] = theFieldValue;
});

кроме этого, вы можете посмотреть на serialize();

12
ответ дан 23 November 2019 в 00:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: