使用JavaScript获取HTML表单值并将其保存到JSON键和值对中 客观的

使用JavaScript获取HTML表单值并将其保存到JSON键和值对中 客观的,javascript,html,json,electron,Javascript,Html,Json,Electron,使用的框架:ElectronJS 我想使用用户提交的表单,并使用NodeJS脚本在客户端PC上生成一个JSON文件。JSON文件将包含键和值对 请参阅下面的预期输出 HTML 错误 这就是我面临的错误 NodeJS脚本 所需输出 好吧,我想我能看出你的错误 在Javascript中,您可以更改此部分: var formData = userData + acctData; console.log(formData); await writer.jsonWriter(formData);

使用的框架:ElectronJS

我想使用用户提交的表单,并使用NodeJS脚本在客户端PC上生成一个JSON文件。JSON文件将包含键和值对

请参阅下面的预期输出

HTML 错误 这就是我面临的错误

NodeJS脚本 所需输出
好吧,我想我能看出你的错误

在Javascript中,您可以更改此部分:

 var formData = userData + acctData;
 console.log(formData);
 await writer.jsonWriter(formData);
本部分: 尝试将其分配给javascript对象,如下所示:

var formData = {username: userData, account: acctData};
console.log(formData);
await writer.jsonWriter(formData);
它将字符串化您的对象并写入适当的输出


我想。

好吧,我想我能看出你的错误

在Javascript中,您可以更改此部分:

 var formData = userData + acctData;
 console.log(formData);
 await writer.jsonWriter(formData);
本部分: 尝试将其分配给javascript对象,如下所示:

var formData = {username: userData, account: acctData};
console.log(formData);
await writer.jsonWriter(formData);
它将字符串化您的对象并写入适当的输出


我认为。

我认为您如何将事件传递到函数中并尝试调用preventDefault存在问题。我使用async关键字将函数直接放在事件侦听器方法上

如前所述,document.querySelector使用CSS选择器,与document.getElementById不同。在您的情况下,我会坚持按ID获取输入元素

正如他在回答中所说,您需要一个JavaScript对象才能正常工作

document.getElementByIdsave.addEventListener'click',异步函数E{ e、 防止违约 var userData=document.getElementById'username'。值 var acctData=document.getElementById'account'。值 var formData={ 用户名:userData, 帐户:acctData };//创建JS对象 console.logJSON.stringifyformData; }; 拯救
我认为您如何将事件传递到函数中并尝试调用preventDefault存在问题。我使用async关键字将函数直接放在事件侦听器方法上

如前所述,document.querySelector使用CSS选择器,与document.getElementById不同。在您的情况下,我会坚持按ID获取输入元素

正如他在回答中所说,您需要一个JavaScript对象才能正常工作

document.getElementByIdsave.addEventListener'click',异步函数E{ e、 防止违约 var userData=document.getElementById'username'。值 var acctData=document.getElementById'account'。值 var formData={ 用户名:userData, 帐户:acctData };//创建JS对象 console.logJSON.stringifyformData; }; 拯救
querySelector应该使用CSS选择器,因此它找不到您的元素。您最好使用document.getElementById。我尝试使用getElementByID,这是相同的错误。querySelector应该使用CSS选择器,因此它找不到您的元素。您最好使用document.getElementById。我试过使用getElementByID,也是同样的错误。谢谢,但是这个问题在promise TypeError中仍然没有解决:无法读取HtmlButtoneElement.saveJSON上null的属性“value”,但在promise TypeError中仍然没有解决:无法读取HtmlButtoneElement.saveJSON上null的属性“value”
 var formData = userData + acctData;
 console.log(formData);
 await writer.jsonWriter(formData);
var formData = {username: userData, account: acctData};
console.log(formData);
await writer.jsonWriter(formData);