如何使用 c# 和 webkit (javascript) 在 html 中选择下拉复选框

本文关键字:html 选择 复选框 何使用 webkit javascript | 更新日期: 2023-09-27 18:31:36

我正在使用C#(Visual Studio 2010)中的WebKitBrowser,我想在owncloud的Web应用程序中自动创建一个用户。登录表单如图 1 所示。点击"Gruppen"后,会出现带有复选框的下拉字段(图2)。html代码如下:

<form id="newuser" autocomplete="off">
<input id="newusername" type="text" placeholder="Loginname" /> 
<input type="password" id="newuserpassword" placeholder="Passwort" /> 
<select class="groupsselect" id="newusergroups" data-placeholder="groups" title="Gruppen" multiple="multiple">
    <option value="Benutzer">Benutzer</option>
    <option value="admin">admin</option>
</select> 
<input type="submit" value="Anlegen" />
</form>

我可以填写用户名新用户密码文本框并提交表单,例如:

String javascript = "document.getElementById('newusername').value = '" + newusername + "';";
WebKitBrowser1.StringByEvaluatingJavaScriptFromString(javascript);

但我无法在新用户组中选择一个值(图2),例如:

String javascript = "document.getElementById('newusergroups').options[1].selected = true;";
String javascript = "document.getElementById('newusergroups').value = 'admin';";

也许有人可以帮助我?提前感谢和最诚挚的问候,

奥利

如何使用 c# 和 webkit (javascript) 在 html 中选择下拉复选框

您不需要为选择元素设置值,通过选择一个选项,您已经设置了"值"。所以删除这一行...

String javascript = "document.getElementById('newusergroups').value = 'admin';"

如果以下行不起作用

String javascript = "document.getElementById('newusergroups').options[1].selected = true;";

您可能希望尝试一下...

String javascript = "document.getElementById('newusergroups').selectedIndex = 1;";