0

有一个食物预订网站,我用它来预订食物。我想自动预订。有一个表格,每个星期有 7 个复选框。我得到复选框并检查我想要的日期,然后单击提交按钮。问题是当复选框被选中但食物但在页面重新加载时单击按钮后未选中复选框(这意味着食物未被保留)。实际上,这就是我对任何常用浏览器所做的事情,并且在重新加载页面后会检查复选框。检查复选框有问题。我试过这些代码来检查它们:

element.SetAttribute("checked", "checked");
element.InvokeMember("Click");

同样,当程序运行时,如果我单击自己(不使用代码)它可以工作,但是如果我用代码检查 2 个复选框,而我自己检查另一个复选框,它也不能正常工作。

4

1 回答 1

0

页面设计器在复选框的标签上具有一些关于 mousedown 和 mouseup 事件的函数,并且在其中调用一些函数而不是复选框的 mousedown 和 mouseup 事件。

<span style="display:inline-block;text-decoration:none;height:21px;">
<input id="chk3" type="checkbox" name="chk3" checked="checked">
<label for="chk3">Tuesday</label>
</span>

所以我调用了复选框旁边标签的点击,它起作用了!

HtmlElement element; //points to the checkbox
HtmlElement label = element.NextSibling;
label.InvokeMember("click");

我发现一些 javascript 函数在另一个文件中,例如

<script src="/WebResource.axd?d=a9EVQm7rLRaKIS8apQBSZw2&amp;t=634596512855689274" type="text/javascript"/>

我认为也许 WebBrowser 没有加载链接到 html 的文件,但我错了。它加载所有文件。

于 2012-03-01T11:18:55.587 回答