JSFiddle - React, Tailwind, and code Playground
HTML
<form>
<input type="text" name="firstname" value="John" />
<input type="text" name="surname" value="doe" />
<input type="email" name="email" value="" />
<input type="radio" name="gender" value="male" />
<input type="radio" name="gender" value="female" />
</form>
<button onclick="get_form_data()">Form Data</button>
JavaScript
function get_form_data()
{
var el = document.querySelector('form');
var matches = el.querySelectorAll('input[name]');
var data = {};
for(var i=0; i< matches.length; i++){
data[matches[i].name] = matches[i].value;
}
var json_data = JSON.stringify(data);
}