在没有id的HTML DOM上调用点击UWP webview中的按钮

时间:2017-07-25 19:11:07

标签: c# html dom uwp

我有c#UWP应用程序,我想使用webview点击下面显示的HTML DOM按钮。

<button type="button" class="btn btn-primary btn-extra-pad btn-shadow" onclick="checkMsgShowBig()">Send</button>

通常输入 ID ,下面的代码可以解决这个问题

var functionString = string.Format(@"document.getElementById('id').click();");
await webView.InvokeScriptAsync("eval", new string[] { functionString });

但按钮只有一个类名。 下面的代码在使用类名时应该有效,但它不起作用。

var functionString = string.Format(@"document.getElementsByClassName('id').click();");
await webView.InvokeScriptAsync("eval", new string[] { functionString });

如何让它发挥作用?谢谢。

1 个答案:

答案 0 :(得分:0)

getElementsByClassName的返回值是一个数组,因此您应该在使用它之前对其进行索引。

这是一个代码示例

private async void SimulateClickAsync()
{
    var functionString = string.Format(@"document.getElementsByClassName('btn btn-primary btn-extra-pad btn-shadow')[0].click();");
    await webView.InvokeScriptAsync("eval", new string[] { functionString });
}