htmlElementCollection和setAttribute函数不起作用 [英] HtmlElementCollection and setAttribute function not working

查看:221
本文介绍了htmlElementCollection和setAttribute函数不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的伙计们,

使用setAttribute函数为标签设置值时,我面临巨大挑战.
我已经创建了webrowser,然后加载了一个html页面init.然后我使用HtmlElementCollection收集了该页面的元素,然后当我尝试使用setAttribute设置特定元素的值时,选择了空白,这是无效的.下拉框仅适用于文本框,其工作正常.这是代码

Dear Guys,

I am facing a chalenge in setting a value for a tagelment using setAttribute function.
I had created webrowser,then i load an html page init.Then i collect the elments of that page using HtmlElementCollection then when i try to set the value for a particular elment using setAttribute its not workin a blank is selected.This is happening for drop down box elemnts only for text boxes its working fine.Here is the code

void SetCombo(string attribute, string attName, string value)
        {
            HtmlElementCollection tagsCollection = webBrowser1.Document.GetElementsByTagName("select");
            foreach (HtmlElement currentTag in tagsCollection)
            {
                if (currentTag.GetAttribute(attribute).Equals(attName))
                    currentTag.SetAttribute("value", value);

            }
        }



请帮助我



Please help me

推荐答案

值属性不适用于选择控件.您可以通过设置选项索引来选择选项.
在下面的代码中,将选择选项4.

value attribute is not present for select control.You can select the option by setting the option index.
In the below code option 4 will be selected.

currentTag.SetAttribute("selectedIndex", "4"); 



您还可以通过子选项控件进行解析,并将选定的属性设置为选定".



You can also parse through the child option controls and set the attribute selected as "selected"

Please find the code snippet.
 HtmlElementCollection tagsCollection = webBrowser1.Document.GetElementsByTagName("select");
            foreach (HtmlElement currentTag in tagsCollection)
            {
                if (currentTag.GetAttribute(attribute).Equals(attName))
                {
                    HtmlElementCollection optionCollection = currentTag.Document.GetElementsByTagName("option");
                    foreach (HtmlElement optionTag in optionCollection)
                    {
                        if (optionTag.GetAttribute("value").Equals("Thevalue you want to check"))
                            optionTag.SetAttribute("selected", "selected");

                    }
                }

            }


这篇关于htmlElementCollection和setAttribute函数不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆