Tengo este elemento de selección de arranque
<select id="createAxiomSelect" class="form-select"> <option selected vale="true">True</option> <option value="false">False</option> </select> Estoy tratando de obtener 'true' o 'false' cuando se selecciona. En su lugar, obtengo la etiqueta "<option selected="" vale="true">True</option>"
He intentado muchas maneras diferentes de hacer esto. p.ej:
$("#createAxiomSelect").find("option:selected").text()$("createAxiomSelect").val()$("#createAxiomSelect option:selected").text()document.getElementById("createAxiomSelect").innerHTML Todos estos devuelven "<option selected="" vale="true">True</option>"
¿Alguien puede encontrar dónde me estoy equivocando, gracias?
Suponiendo que está utilizando jQuery, ya que indica que en la pregunta: el elemento n. ° 2 está cerca. La sintaxis correcta sería:
$("#createAxiomSelect").val();Vea primero que el selector de ID de jQuery requiere '#'. .val() simplemente devolverá el valor de la opción seleccionada.
Tenga en cuenta que tiene un error ortográfico en su primera opción vale= en lugar de value=. Esto devolverá en su lugar el texto de la opción, por lo tanto, 'Verdadero' en lugar de 'verdadero'.
De lo contrario, creo que estás en el camino correcto. También puede hacer esto usando JavaScript directo, pero dado que está usando jQuery, le sugiero que se quede con ese patrón y no mezcle y combine.
Puede usar document.forms['<formName>'].elements['<selectName>'].value .
Importante: debe usar el atributo de name , no id .
$("#createAxiomSelect option:checked").value