You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Selenium中向Aadhaar输入框输入数据失败,求正确实现方法

在Selenium VB中向指定输入框输入数据失败的解决方法

问题场景

目标输入框的HTML元素如下:

<input name="aadharNumber" placeholder="Enter Aadhaar No." error="[object Object]" maxlength="12" type="text" class="form-control" value="">

尝试了以下两段VB代码均未成功输入数据:

bot.FindElementByClass("form-control").SendKeys ("242730110592")
bot.FindElementByname("aadharNumber").SendKeys ("242730110592")

可行的解决方法

  • 等待元素完全加载
    页面可能未渲染完成就执行了输入操作,需显式等待元素可交互:

    Dim wait As New WebDriverWait(bot, TimeSpan.FromSeconds(10))
    Dim aadharInput As IWebElement = wait.Until(ExpectedConditions.ElementToBeClickable(By.Name("aadharNumber")))
    aadharInput.SendKeys("242730110592")
    
  • 检查是否存在iframe嵌套
    若输入框在iframe内,需先切换到对应iframe才能定位元素:

    ' 替换为实际iframe的id/name/元素定位
    bot.SwitchTo().Frame("target-frame-id")
    bot.FindElementByName("aadharNumber").SendKeys("242730110592")
    ' 操作完成后切回主文档
    bot.SwitchTo().DefaultContent()
    
  • 使用更精准的定位器
    避免类名重复或名称冲突,用CSS选择器或XPath定位:

    • CSS选择器:
      bot.FindElementByCssSelector("input[name='aadharNumber'].form-control").SendKeys("242730110592")
      
    • XPath:
      bot.FindElementByXPath("//input[@name='aadharNumber' and @placeholder='Enter Aadhaar No.']").SendKeys("242730110592")
      
  • 先清除输入框再输入
    部分输入框可能存在默认值或占位符干扰,先清除再输入:

    Dim aadharInput As IWebElement = bot.FindElementByName("aadharNumber")
    aadharInput.Clear()
    aadharInput.SendKeys("242730110592")
    
  • 模拟真实用户操作
    先点击激活输入框,再执行输入:

    Dim aadharInput As IWebElement = bot.FindElementByName("aadharNumber")
    aadharInput.Click()
    aadharInput.SendKeys("242730110592")
    
  • 通过JavaScript注入输入
    若常规方法无效,直接用JS修改输入框value属性:

    Dim jsExecutor As IJavaScriptExecutor = CType(bot, IJavaScriptExecutor)
    jsExecutor.ExecuteScript("document.querySelector('input[name=""aadharNumber""]').value = '242730110592';")
    

内容的提问来源于stack exchange,提问作者Ajarlinux

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 14:09:55