当我 dispatchEvent() 时表单元素变为空白

Form element goes blank when I dispatchEvent()

我正在尝试编写一个 PhantomJS 脚本来自动将应用程序提交到亚马逊应用商店。但是我在提交表格时遇到了问题。这是我用来提交应用程序的 URL:https://developer.amazon.com/application/new.html

然后在控制台上我输入这段代码来测试一下: 我发出的第一个命令是:

document.getElementsByClassName('inputBlockTitle')[0].nextElementSibling.value='zzzzzz zzzzzz';

一切都很好。

接下来的命令是...

document.querySelector('select').selectedIndex = 16;
var evnt2 = document.createEvent("MouseEvents");
evnt2.initEvent("change",true,true);

...一切都很好....

...但是当我实际通过执行调度该事件时...

document.querySelector('select').dispatchEvent(evnt2);

...应用程序标题变为空白!

我做错了什么?

好的,经过几天的尝试和错误,我得到了一些有用的东西。不知道为什么会这样,但确实如此。以下是我必须发出的一系列命令:

var app_title_el = $(document.body).find('input')[0];
app_title_el.value='the title of the app';
var ap_ti_evnt = document.createEvent("MouseEvents");
ap_ti_evnt.initEvent("change", true, true);
app_title_el.dispatchEvent(ap_ti_evnt);
$(document.body).find('select')[0].selectedIndex = 16;
var evnt2 = document.createEvent("MouseEvents");
evnt2.initEvent("change",true,true);
$(document.body).find('select')[0].dispatchEvent(evnt2);