javaScript-更改google日历上位置输入字段的值

javaScript-更改google日历上位置输入字段的值,javascript,input,Javascript,Input,作为我为Google calendar开发的chrome扩展的一部分,我想更改Google calendar会议事件()上的“添加位置”输入字段 到目前为止,我已经尝试了以下方法: let locationInputField = document.querySelector('[aria-label="Location"]'); locationInputField.value = 'Meeting Place'; locationInputField.dispatchEvent(new Ev

作为我为Google calendar开发的chrome扩展的一部分,我想更改Google calendar会议事件()上的“添加位置”输入字段

到目前为止,我已经尝试了以下方法:

let locationInputField = document.querySelector('[aria-label="Location"]');
locationInputField.value = 'Meeting Place';
locationInputField.dispatchEvent(new Event("input", { bubbles: true }));
虽然该值会更改,但保存会议事件后,位置文本(“会议地点”)将不会保存,并保持为空

我已经搜索了其他可选解决方案,并尝试使用
.focus()
.select()
但也没有成功

谢谢你的帮助。
谢谢

您的附加组件的目的是什么?是否必须通过使用前端操作来完成,或者使用API是可行的解决方案?直接通过Google Calendar API创建事件比试图编辑DOM容易得多,也更安全。使用
querySelector
方法获取表单元素是一种不好的做法,因为aria标签可能会在任何时候更改,从而使代码无法工作。@rafa谢谢。附加组件的目的是帮助安排会议室,与google calendar的DOM的唯一联系是将会议室名称放置在适当的位置(位置输入字段)。所以,恕我直言,我不想也不需要使用官方的API。老实说,像这样直接操作DOM不是一条好路。日历页面是动态的,您可以通过检查页面的来源看到这一点,因此标签和ID一直在更改,而没有任何事先警告,这将使您的加载项无法工作,并且需要不断更新。API的存在正是为了实现这类功能,我怎么强调以这种方式操作事件会更好呢?@RafaGuillermo我会考虑您的反馈(简而言之,这意味着我未来的用户(可能是这样的情况)必须为我的加载项/扩展提供对其日历的访问权限(当前情况并非如此)。然而,我认为我们没有抓住要点。问题是如何使用谷歌日历网页上的输入字段,以及该字段无法更改和保存的事实。
问题是如何使用谷歌日历网页上的输入字段,以及该字段无法更改和保存的事实。
-因为它不意味着更改和保存,这就是为什么它本质上是动态的。我不想为你的项目给你不好的建议,特别是一些在可预见的将来可能会停止工作的建议。