如何从下拉框中提取选定的值

how to extract selected value from dropdown box

我有这张HTML

<div id="ctl00_cphMain_upAseguradora">
    <ul>
        <li>
            Régimen de Afiliación(*)
            <select name="ctl00$cphMain$ddlRegimenAfiliacion" id="ctl00_cphMain_ddlRegimenAfiliacion" disabled="disabled" class="aspNetDisabled comboBox">
                <option value="0">-Seleccione-</option>
                <option selected="selected" value="58">Contributivo</option>
                <option value="61">Especial</option>
                <option value="60">Pobre no afiliado</option>
                <option value="59">Subsidiado</option>
            </select>
        </li>
    </ul>
</div>

对于网站的这一部分

通过 selectorgadget 我找到了我需要的元素,但我不确定如何提取所选选项,在本例中为“Contributivo”

Regimen = detallepersona %>% html_elements("#ctl00_cphMain_upAseguradora ul:nth-child(1) li:nth-child(1) option") 

paste(Regimen)
[1] "<option value=\"0\">-Seleccione-</option>\n"           "<option selected value=\"58\">Contributivo</option>\n"
[3] "<option value=\"61\">Especial</option>\n"              "<option value=\"60\">Pobre no afiliado</option>\n"    
[5] "<option value=\"59\">Subsidiado</option>"             

Regimen %>%  html_attr("selected")
[1] NA         "selected" NA         NA         NA        

Regimen %>% html_text()
[1] "-Seleccione-"      "Contributivo"      "Especial"          "Pobre no afiliado" "Subsidiado"   
Regimen = detallepersona %>% html_elements("#ctl00_cphMain_upAseguradora ul:nth-child(1) li:nth-child(1) option") 

Regimen1 = Regimen %>%  html_attr("selected")
Regimen1 = !is.na(Regimen1)
Regimen = Regimen %>% html_text()

Regimen[Regimen1]
[1] "Contributivo"

使用属性或属性 = 值 css 选择器来定位具有 ID ctl00_cphMain_ddlRegimenAfiliacionselected 属性的父 select 元素的子元素。下面 css 选择器中的 space 是后代组合器。

#ctl00_cphMain_ddlRegimenAfiliacion [selected]

#ctl00_cphMain_ddlRegimenAfiliacion [selected=selected]

例如

Regimen = detallepersona %>% html_element('#ctl00_cphMain_ddlRegimenAfiliacion [selected]')%>%html_text()

阅读更多:

  1. https://developer.mozilla.org/en-US/docs/Web/CSS/Attribute_selectors
  2. https://developer.mozilla.org/en-US/docs/Web/CSS/Descendant_combinator