I made a correct function based on the answer below
export function submitEvent_2_json(e) {
const jsondata = {}
let fd= new FormData(e.target)
for (let key of fd.entries()) {
jsondata[key[0]]=key[1]
}
return jsondata
}
I'm trying to get data from form and convert it to json
It's obvious that data is in submitEvent.target
(as follow picture), but the result is undefined
or null
<template>
<form @submit.prevent="submit">
<input id="aa"/>
<button type="submit">ok</button>
</form>
</template>
<script setup>
function submit(e) {
console.log(e)
let fd= new FormData(e.target)
console.log(fd)
console.log(e.formData)
console.log(fd.entries())
}
</script>
That's how FormData
works
FormData is a special type of object which is not stringifyable can cannot just be printed out using console.log
If you want to get an item inside, you can use get
method.
EX:
fd.get('username');
If you want get all entries inside, you can loop through
for (var key of fd.entries()) {
console.log(key[0] + ', ' + key[1])
}
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments