首页 > 解决方案 > 为什么这个 javascript 命令不执行?

问题描述

webview.Eval("var list = document.getElementsByClassName('some button class')[0].click();");
        webview.Eval("document.getElementById('savebutton').click();");

从第一条指令开始,程序进入一个有保存按钮的页面,然后第二行将是单击保存按钮。

当我按下按钮时,整个代码应该运行,但我的问题是当我按下按钮时,只执行第一条指令。如果我再次按下按钮,后半部分也将被执行。

有谁知道该怎么做?预先感谢您的帮助!

标签: javascriptc#xamarin.formswebview

解决方案


已解决:我使用Device.StartTimer()方法来延迟第二行的执行。

TimeSpan delay = new TimeSpan(0, 0, 3);
Device.StartTimer(delay, DelayHandler);
webview.Eval("var list = document.getElementsByClassName('some button class')[0].click();");


bool DelayHandler()
{
 webview.Eval("document.getElementById('savebutton').click();");
 return false;
}

推荐阅读