Добрый день! Столкнулся с задачей по автоматизации работы с браузером с помощью powershell
Есть web ресурс на котором присутствует добавление значения через функцию prompt, но с помощью powershell не получается это автоматизировать и приходится менять функцию prompt на любую другую т.к. невозможно нажать на всплывающее подтверждение при помощи скрипта.
вот собственно кусок формы с которой борюсь:
<input type="submit" name="ctl00$MainContentPlaceHolder$FormView1$TabContainer1$PropertiesTabPanel$btnAddDocIssue" value="+" onclick="return addDocIssueClick();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$MainContentPlaceHolder$FormView1$TabContainer1$PropertiesTabPanel$btnAddDocIssue", "", true, "", "", false, false))" id="ctl00_MainContentPlaceHolder_FormView1_TabContainer1_PropertiesTabPanel_btnAddDocIssue" />
При нажатие на кнопку "+" автоматически срабатывает функция addDocIssueClick()
function addDocIssueClick() {
var newDU = prompt('Enter new value:', '<new value example>');
if ((newDU == '') || (newDU == 'undefined') || (newDU == null)) {
return false;
}
document.getElementById("ctl00_MainContentPlaceHolder_HFnewdocissue").value = newDU;
var obj = document.getElementById("ctl00_MainContentPlaceHolder_HFnewdocissue");
obj.value = newDU;
return true;
}
в которой и пытаюсь заменить prompt() чем либо другим
на данный момент пытаюсь осуществить следующим способом но к сожалению это не работает:
$ie.Document.IHTMLDocument3_getElementById("ctl00_MainContentPlaceHolder_FormView1_TabContainer1_PropertiesTabPanel_btnAddDocIssue").outerHtml = '<input type="submit" id="mysubmit2" value="Send" onclick="function my(){document.getElementById("ctl00_MainContentPlaceHolder_HFnewdocissue").value=12345;var obj=document.getElementById("ctl00_MainContentPlaceHolder_HFnewdocissue");obj.value=12345;}return my();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$MainContentPlaceHolder$FormView1$TabContainer1$PropertiesTabPanel$btnAddDocIssue", "", true, "", "", false, false))">'
$ok2=$ie.Document.IHTMLDocument3_getElementById("mysubmit2");
$ok2.click();
Кнопка нажимается но не происходит нужное событие по передачи значения = 12345 последующим функциям обработки:
function WebForm_PostBackOptions(eventTarget, eventArgument, validation, validationGroup, actionUrl, trackFocus, clientSubmit) {
this.eventTarget = eventTarget;
this.eventArgument = eventArgument;
this.validation = validation;
this.validationGroup = validationGroup;
this.actionUrl = actionUrl;
this.trackFocus = trackFocus;
this.clientSubmit = clientSubmit;
}
function WebForm_DoPostBackWithOptions(options) {
var validationResult = true;
if (options.validation) {
if (typeof(Page_ClientValidate) == 'function') {
validationResult = Page_ClientValidate(options.validationGroup);
}
}
if (validationResult) {
if ((typeof(options.actionUrl) != "undefined") && (options.actionUrl != null) && (options.actionUrl.length > 0)) {
theForm.action = options.actionUrl;
}
if (options.trackFocus) {
var lastFocus = theForm.elements["__LASTFOCUS"];
if ((typeof(lastFocus) != "undefined") && (lastFocus != null)) {
if (typeof(document.activeElement) == "undefined") {
lastFocus.value = options.eventTarget;
}
else {
var active = document.activeElement;
if ((typeof(active) != "undefined") && (active != null)) {
if ((typeof(active.id) != "undefined") && (active.id != null) && (active.id.length > 0)) {
lastFocus.value = active.id;
}
else if (typeof(active.name) != "undefined") {
lastFocus.value = active.name;
}
}
}
}
}
}
if (options.clientSubmit) {
__doPostBack(options.eventTarget, options.eventArgument);
}
}
Помогите пожалуйста как можно подсунуть значение 12345 чтоб все заработало?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Здравствуйте! Я не давно в JSнаучился на события мыши эффекты накладывать
Есть две страницы - главная и contactsВ меню есть ещё один раздел - solutions (это секция, которая находится на главной странице)