我的C#webbrowser中有一个包含
的页面<input type="submit" value="Sign out">
由于它没有id,我无法使用webbrowser的htmldocument通过id获取它并调用它的click。我现在如何使用htmldocument点击它?
答案 0 :(得分:0)
你可以给它自己的ID,你不需要服务器控制它。只是做:
<input type="submit" ID="MySubmitButton1" value="Sign out">
您提到要在点击时调用某些内容,或者只是手动添加onclick事件:
<input type="submit" onclick="CallMyFunction()" value="Sign out">
如果要将输入控件传递给函数,请将'this'传递给它:
<input type="submit" onclick="CallMyFunction(this)" value="Sign out">
您可能不希望提交按钮在您调用函数时发布任何内容,因此您可能需要以下内容:
<input type="submit" onclick="return CallMyFunction()" value="Sign out">
function CallMyFunction()
{
bool IsFormValid = false;
// Check if form is valid
return IsFormValid;
}
答案 1 :(得分:0)
假设您无法控制HTML页面,因此无法向元素添加ID,您可以使用HtmlDocument.GetElementsByTagName
获取所有输入元素,然后通过{{1}过滤该集合}和type
属性。类似的东西:
value
请注意,如果有多个匹配元素(仅点击第一个匹配元素),则此方法不合适。
答案 2 :(得分:0)
这个怎么样:
webbrowser1.Document.Forms[0].InvokeMember("submit");
答案 3 :(得分:0)
如何处理具有多个HTML提交按钮且没有ID的页面?如何从第二行识别提交按钮。Multiple html buttons