淘先锋技术网

首页 1 2 3 4 5 6 7

enter image description here

场景: 选择颜色,输入其他详细信息并保存。 当我点击html元素color (input type=color)时,它会打开一个颜色选择器,这是一个弹出窗口。

<input type="color" class="form-control ng-pristine ng-valid ng-empty ng-touched" style="width: 70%;" ng-model="modalData[0].StrokeColor" placeholder="color" aria-invalid="false">

这是我的html元素。

元素的默认值为null。如果不选择颜色,我无法保存此表单。 我尝试使用js命令来设置元素的值。

document.getElementsByClassName('form-control ng-valid ng-touched ng-not-empty ng-dirty ng-valid-parse')[0].setAttribute('value', '#32CD32')

这改变了颜色的值,但对UI或保存没有影响。

我该怎么办,我不擅长脚本。任何帮助。 谢了。

尝试以下代码

JavascriptExecutor js = (JavascriptExecutor) w;
WebElement ColorElement =w.findElement(By.cssSelector("input[type='color']"));
js.executeScript("arguments[0].setAttribute('value', '#FF0000')",ColorElement);

对我来说只是打电话。web元素上的sendKeys(# ff 0000)与Selenium 4 + Chrome协同工作。

我在python中遇到了同样的问题。除了选择颜色,我还需要在调色板中执行模拟的用户操作。行动链帮助了我。

action = ActionChains(self.driver)
element = self.find_element(locator)
element.click()

for i in range(3):
  action.send_keys(Keys.TAB)
  for n in range(3):
    action.send_keys(5)
    action.send_keys(Keys.TAB)
  action.perform()

[palette in my chrome][1]


  [1]: https://i.stack.imgur.com/yWS4V.png
  [2]: https://i.stack.imgur.com/mYVmc.png