javascript - 如何通过更改 html 表单中的选择选项来更改变量?

标签 javascript html forms function parameters

每当用户在 html 表单的选择列表中更改其答案时,我都会尝试更改我的变量“year”。我想将“年份”更改为当前选择的任何年份,因此如果用户选择“2022”,我希望我的变量年份等于 2022。我尝试使用“事件”作为函数 setYear() 的参数,但那是不成功的。任何帮助将不胜感激。

var year;

<script type="text/javascript">
    function setYear(a) {
        year = a;
    }
</script>

<form>
    <tr>
        <td>Year: </td>
        <td><select name="Year" onchange="setYear(event)">
            <option value="2020">2020</option>
            <option value="2021">2021</option>
            <option value="2022">2022</option>
        </select></td>
    </tr>
</form>

最佳答案

您的代码:

var year;

<script type="text/javascript">
    function setYear(a) {
        year = a;
    }
</script>

<form>
    <tr>
        <td>Year: </td>
        <td><select name="Year" onchange="setYear(event)">
            <option value="2020">2020</option>
            <option value="2021">2021</option>
            <option value="2022">2022</option>
        </select></td>
    </tr>
</form>

您正在声明变量var外面<script>标签。因为,var<script> 之外声明标签,它对 javaScript 函数不可见。
此外,您正在设置 var到事件参数。 此代码可能有效。



<script type="text/javascript">
    var year;
    function setYear(a) {
        year = a;
    }
</script>

<form>
    <tr>
        <td>Year: </td>
        <td><select name="Year" onchange="setYear(this.value)">
            <option value="2020">2020</option>
            <option value="2021">2021</option>
            <option value="2022">2022</option>
        </select></td>
    </tr>
</form>

关于javascript - 如何通过更改 html 表单中的选择选项来更改变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60784597/

相关文章:

javascript - 如何按键对ng-options中的数组进行排序?

Javascript:如何在单击按钮时显示下一个数组值

javascript - jQuery 数据表 : Individual column searching not working

jquery - 在提交之前执行表单验证 - jQuery

javascript - 用于在 GitHub 中通过按 Ctrl+Enter(内置热键)提交问题或发布评论时创建确认弹出窗口的用户脚本

php - 在 JS 中处理数组值

html - 使用 th :text in thymeleaf 添加 HTML 标签

javascript - 内联/ block Javascript 是否在文档就绪之前执行?

javascript - 追加到 div 一次

Play2 中 inputRadioGroup 的 Java 示例