我有一些代码可以成功地将各种值输入到网页上的表单中,并且可以看到数据以正确的格式放入了正确的字段中。当我使用屏幕上的“确定”按钮或代码提交表单时,该过程完成了,但是所携带的日期数据是当前日期,尽管我可以在该字段中看到一个不同的日期。我可以从记事本中将数据剪切并粘贴到该字段中,并且效果很好。
因此,简而言之,尽管我可以在屏幕上看到正确的日期日期,但该日期在脚本提供时并没有提交。
以下是表单相关部分的html,我认为是位于其两侧的相关代码:
<iframe id="mainPanel_iframe" name="mainPanel_iframe" class="mochaIframe" src="https://portal.starleaf.com/pbx/node-1.live.pr.starleaf.com/portal/#page=addUserConference&">
#document
<div> class="mainTableContainer">
<form action="#" method="get">
<div class="formRow">
<div class="fieldBlock calendarBlock">
<input type="date" id="editConference_startNative" class="native_date has_native">
<input type="text" id="editConference_start" class="sl_date has_native" placeholder="DD/MM/YYYY">
<input type="text" id="editConference_startTime" placeholder="Time" class="ui-timepicker-input" autocomplete="off">
<div id="start-date-picker"><div class="pika-single is-hidden is-bound" style="position: static; left: auto; top: auto;"></div></div>
<div id="start-time-picker"></div>
</div>
</div>
</form>
</div>
<div class="buttons">
<input type="button" id="editConference_ok" value="OK">
</div>
</iframe>
这是我一直在使用的Javascript。我一直在使用Chrome F12控制台并在iframe中对其进行测试。它会自动填写表格并提交。带有StDate(id="editConference_start"
)的行不起作用,但是带有StTime(id="editConference_startTime"
)的下一行在“单击”后确实通过。两者都是type="text"
。
\将数据加载到字段中
var StDate = "06/05/2020";
document.getElementById('editConference_start').value = StDate;
var StTime = "16:20";
document.getElementById('editConference_startTime').value = StTime;
\单击“确定”
document.getElementById("editConference_ok").click();
尝试过的事情
1)使用下面的代码通过id =“ editConference_startNative”元素输入数据。它似乎不起作用,但是我不确定我的代码是否有意义,或者这是否值得追求:
var StDate = document.querySelector('input[type="date"]');
StDate.value = '2020-05-05';
document.getElementById('editConference_startNative').value = StDate;
2)创建一个具有日期类型的var以用于输入的本机版本
var StDate = new Date("05/05/2020");
document.getElementById('editConference_startNative').value = StDate;
我认为输出使用的格式错误,但无法弄清楚如何以正确的格式将其缩短。也许这不是正确的方法。
3)删除最终的单击代码,然后等待几秒钟,然后他们将Click行添加到控制台中并执行,但这没有用。我想这不是拖延的问题。我也尝试在点击代码之前尝试使用此代码,但会导致延迟,但我不确定它是否有效:
setTimeout(function(){}, 3000);
document.getElementById("editConference_ok").click();
提前感谢您的任何建议。