Android webview加载js click后窗口无法弹出 50C

用webview加载一个网页想要做自动登录功能,网址是
https://weixin.citicsinfo.com/tztweb/deal/index.html#!/account/activePhone.html
在获取验证码后会有一个弹窗。现如果点击webview上的获取验证码页面有弹窗但是调用js
javascript:void(0);document.getElementById('phoneNum').value='18519056349'; $('#sendMsg')[0].click();等多种语句都无法实现弹出(js语句已经在浏览器中验证)

3个回答

可以参考下我的脚本,可以实现你需要的自动登录的功能
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.get("http://www.qingshuxuetang.com")
self.driver.maximize_window()
time.sleep(2)
print'1'

def test_Login(self):
self.driver.find_element_by_xpath(".//*[@id='bs-example-navbar-collapse-1']/ul/li[2]/a").click()
time.sleep(1)
self.driver.find_element_by_xpath(".//*[@id='uname']").send_keys("qingfeng")
time.sleep(1)
self.driver.find_element_by_xpath(".//*[@id='pwd']").send_keys("123456")
time.sleep(1)
self.driver.find_element_by_id("loginBtn").click()
time.sleep(3)
name=self.driver.find_element_by_xpath(".//*[@id='currentCity']").text

self.assertEqual(name, u'南京市')

time.sleep(2)
print'2'

yihuiyu123
yihuiyu123 谢谢你的帮助,你这个代码的意思大概是没执行一步就休眠一下然后执行吧,这个应该是没用的,我之前把获取验证码这一步单独执行了不好使
2 年多之前 回复

遇到过此类问题,js语句没问题,但是webview直接加载不生效。
解决方法 javascript:setTimeout(function () {--------},1000);
大括号执行你的方法,1000时间可改变 有点延时时间就应该可以

qq_30718829
csdn_邵 回复yihuiyu123: 好吧,继续关注你这个,学一学
2 年多之前 回复
yihuiyu123
yihuiyu123 回复csdn_邵: 调试了代码在线的js是没问题的,我是android开发,android真机调试我也做了
2 年多之前 回复
qq_30718829
csdn_邵 chrome浏览器在线调试,可以看出你的问题的。我现在做android 浏览器,你这类的问题不止一次的遇到过都是这样解决的
2 年多之前 回复
qq_30718829
csdn_邵 回复yihuiyu123: chrome 调试了吗
2 年多之前 回复
yihuiyu123
yihuiyu123 谢谢你的帮助,我试了,语句是生效的但是弹出窗还是不执行
2 年多之前 回复

首先确定你的app是否成功读取js文件

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问