我尝试使用HtmlElement.InnerText填充WebBrowser控件中的表单域。该字段预先填充了一些灰色的占位符文本"搜索您的购买",但是当我用自己的文本填充该字段时,它也显示为灰色,当我点击提交时无效按钮。
如果我手动将字段输入字段而不是黑色,并且在我点击提交时工作正常。
我如何让它工作?这是表格html:
<form role="form" action="/mod/bcs/account/" method="get" class="margin-top-20">
<div class="input-group">
<input class="form-control" name="searchPurchases" type="text" placeholder="Search your purchases" value="" id="search-bcs">
<div class="input-group-btn">
<button type="submit" class="btn btn-success">
<i class="fa fa-search"></i>
</button>
</div>
</div>
</form>
我自己的代码:
HtmlElement searchBox = webBrowser.Document.GetElementById("search-bcs");
searchBox.InnerText = "text";
答案 0 :(得分:2)
正如我的评论所述,<input>
元素包含的值保存在value
属性中,而不是子文本节点中。
如果您想通过代码更改值,则需要使用HtmlElement.SetAttribute(),如下所示:
searchBox.SetAttribute("value", "text");