JavaScript 与选项交互

标签 javascript html forms

我目前有一个下拉列表...来完成空白句子。

我遇到的问题是 Uncaught TypeError: Cannot read property 'options' of null

这是我的 HTML 片段

<section class="question-three">
                <h4>Question 3</h4>
                <ol>
                    <li>A partnership is a business entity 
                    <select id="selectionOne">
                        <option value="#">Please Select...</option>
                        <option value="sole trader">sole trader</option>
                        <option value="members">members</option>
                        <option value="shareholders">shareholders</option>
                        <option value="run">run</option>
                        <option value="limited company">limited company</option>
                        <option value="owned">owned</option>
                    </select>
                    by two ore more people who carry a business collectively with a view to making a profit.
                </li>

JavaScript

var dropDownList = {
    answers: ['sole trader', 'members', 'shareholders', 'run', 'limited company', 'owned'],
    checkAnswer: function() {
        var check = document.getElementById('selectionOne');

        if(check.options == dropDownList.answers[5]) {
            console.log('The answer is right!');
        } else {
            console.log('false')
        }
    }
};

dropDownList.checkAnswer();

有人可以帮我吗?

谢谢

最佳答案

您没有访问。我们也不知道您何时触发该事件。您需要在选择呈现后分配它:

var dropDownList = {
    answers: ['sole trader', 'members', 'shareholders', 'run', 'limited company', 'owned'],
    checkAnswer: function() {
        var check = document.getElementById('selectionOne');

        if(check.value == dropDownList.answers[5]) {
            console.log('The answer is right!');
        } else {
            console.log('false')
        }
    }
};
window.onload=function() {
  document.getElementById("checkIt").onclick=function() {
    dropDownList.checkAnswer();
  }
  // or document.getElementById("selectionOne").onchange
}
<section class="question-three">
                <h4>Question 3</h4>
                <ol>
                    <li>A partnership is a business entity 
                    <select id="selectionOne">
                        <option value="#">Please Select...</option>
                        <option value="sole trader">sole trader</option>
                        <option value="members">members</option>
                        <option value="shareholders">shareholders</option>
                        <option value="run">run</option>
                        <option value="limited company">limited company</option>
                        <option value="owned">owned</option>
                    </select>
                    by two ore more people who carry a business collectively with a view to making a profit.
                </li>
<button id="checkIt">Check</button>

关于JavaScript 与选项交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27901567/

相关文章:

javascript - 我的随机播放功能有哪些缺点?

javascript - Jquery 无法在 Windows 8 HTML5 应用程序中工作

forms - Flutter 中具有多个步骤的表单(向导样式) - 最佳方法

javascript - 调用文件删除页面后返回页面状态

javascript - 二维数组随机生成器 jQuery

javascript - Safari 扩展 safari.application 错误

javascript - Bootstrap 下拉菜单无法选择下拉菜单选项

javascript - 删除最近上传的图像

c# - 只读取 HTML 文件的标题和/或 META 标签,不加载完整的 HTML 文件

php - 如何根据 HTML FORM 中定义的变量动态生成 MYSQL UPDATE 语句