我正在用VBA编写一个连接到以下网站的宏:https://sphere.ush.inbcu.com/index.html#/ (可能你无法登录到那里)。
有两个元素:左边有一个下拉菜单,右边有一个文本框。
如果用户没有从下拉菜单中选择任何内容-则无法将任何输入放入文本框中。用户需要从下拉菜单中选择一个项目-然后可以将输入放入文本框中。
我已经写了一段代码来从下拉菜单中选择一项-但是当宏这样做的时候-右边的文本框仍然是灰色的,它不可能在那里写任何输入。当用户手动单击下拉菜单并选择一个项目时-文本框不是灰色的,并且可以在那里提供输入。
我尝试过各种方法。我检查了这两个元素,并尝试设置它们的属性,例如:
element.setAttribute("disable") = ""
element.setAttribute("autocomplete") = "on"
element.setAttribute("aria-expanded") = "true"
我注意到,当textbox被允许在内部提供输入时,这些属性应该具有这些属性。当文本框是“灰色”并且不可能提供输入时,它们的属性是:"disabled“、"off”、"false“。但是-什么都没有改变,通过宏设置这些属性-不会改变任何东西。
下拉菜单的HTML代码:'<select class="form-control input-sm ng-pristine ng-valid ng-empty ng-touched" ng-change="Tile.clearResults()" ng-model="Tile.searchData.searchBy" ng-options="item as item for item in Tile.searchBy"><option value="string:Deal" label="Deal">Deal</option><option value="string:Deal/Order" label="Deal/Order">Deal/Order</option><option disabled="" selected="selected" value="">Search By</option><option value="string:Department System Number" label="Department System Number">Department System Number</option><option value="string:Invoice/Statement #" label="Invoice/Statement #">Invoice/Statement #</option></select>
‘
'<option value="string:Deal" label="Deal">Deal</option>
<option value="string:Deal/Order" label="Deal/Order">Deal/Order</option>
<option disabled="" selected="selected" value="">Search By</option>
‘
文本框的HTML代码:
‘
<option disabled="" selected="selected" value="">Search By</option>
<input disabled="disabled" class="ui-select-search input-xs ng-pristine ng-untouched ng-valid ng-empty" role="combobox" aria-expanded="false" style="width: 482px;" spellcheck="false" aria-label="Select box" ondrop="return false;" type="search" placeholder="Enter Search Criteria..." ng-class="{'spinner': $select.refreshing}" ng-click="$select.activate()" ng-model="$select.search" ng-disabled="$select.disabled" autocapitalize="off" autocorrect="off" autocomplete="off">
‘
您能告诉我应该更改哪个属性才能使文本框允许将输入放入其中吗?
谢谢,
发布于 2019-08-30 06:12:01
ie.Document.parentWindow.execScript "angular.element.getElementsByClassName(">I put the class name here<")Number of element.scope()..='Value‘“
https://stackoverflow.com/questions/57308059
复制相似问题