获取表单的值 select 输入 returns "undefined"

Getting the value of form select input returns "undefined"

我有这个 html 表单代码:

<form>
    <select id="sex" name="sex" onchange="alert($('#sex').val())">
        <option value="0">Male</option>
        <option value="1">Female</option>
    </select>
</form>

也许我使用 jquery 语法错误地检索值,但是当 select 被更改时,会出现一个消息框 "undefined"。我预计结果将是 0 或 1,或者至少是 "Male" 或 "Female"。不是 "undefined"。我做错了什么?

https://learn.jquery.com/using-jquery-core/faq/how-do-i-get-the-text-value-of-a-selected-option/

你也可以试试这个

    onchange="alert(this.value)"

在此,为您奉上:

http://jsfiddle.net/jm7uo5g0/

您需要在您的 $ 选择器中的 #sex 之后添加 :selected :)。

像这样:

<form>
    <select id="sex" name="sex" onchange="alert($('#sex :selected').val())">
        <option value="0">Male</option>
        <option value="1">Female</option>
    </select>
</form>

并且不要忘记添加 Jquery 文件 ;)。

很可能,您正在页面末尾加载 jQuery 库。要么在表单声明之前包含源代码,要么按照其他答案中的建议使用 this.value

如果最后使用jQuery库。他们的功能将无法访问。如果您看到这样的错误,则可以肯定库包含在错误的位置。

最佳提示:Use/include jquery <head>

中的库