【问题标题】:make javascript preform an action based on input in drop down menus使 javascript 根据下拉菜单中的输入执行操作
【发布时间】:2014-03-20 15:28:10
【问题描述】:

我一直在尝试制作一个小网页,您可以在其中从下拉菜单中选择两个项目,然后按一个按钮,它会播放声音,声音会根据下拉菜单中的选择而有所不同。不幸的是,我无法让我的 JavaScript 与按钮交互,然后让 JavaScript 发挥在下拉列表中选择的内容。

以下是我的基本代码的一些 sn-ps:

HTML:

<head>
    <script src="src/EEEE.js"></script>
</head>
<body>
    <input type="image" id="button" value="submit" src="img/Button.png" onclick="handleClick()"/>
    <br>
    <select id="who">
        <option value="name1">Name 1</option>
        <option value="name2">Name 2</option>
        <option value="name3">Name 3</option>
    </select>
    <select id="what">
        <option value="op1">Option 1</option>
        <option value="op2">Option 2</option>
        <option value="op3">Option 3</option>
    </select>
</body>

JavaScript(在名为“src”的文件夹中):

function handleClick(){
    var w1 = document.getElementById("who").value;
    var name = who.options[who.selectedIndex].text;
    if(name == "name1"){
        /*do this*/
    }else if(name == "name2"){
        /*do that*/
    }
}

【问题讨论】:

    标签: javascript html drop-down-menu


    【解决方案1】:

    我已经修复了你的代码,你可以看到修复的演示Here

    基本上你应该使用 'value' 而不是 'text' 并且通过 javscript 附加事件似乎有效。

    【讨论】:

    • 谢谢,希望我现在应该可以使用了
    • 欢迎您。如果我的回答有帮助,请考虑点击左侧的绿色 V 接受它:)
    • 糟糕,忘记了 :)
    【解决方案2】:

    使用 jquery 很容易:

    $('#button').click(function(){
        dd1Val = $('#who').val();
        dd2Val = $('#what').val();
        alert(dd1Val + "" + dd2Val);
    })
    

    【讨论】:

    • 如果 op 想要在 jQuery 中使用它,他会标记它 jQuery
    • 如果 op 从未听说过 jQuery?
    • 如果您再次阅读他的问题,您可能会注意到 op 请求帮助以获取 javscript 以与按钮进行交互。
    • 您确实意识到 jquery 是 javascript。如果他专门要求提供原生 js 解决方案,我会犹豫。
    • jquery 是一个扩展脚本,许多人不愿意使用或由于对其施加的限制而无法使用。如果他没有专门要求 jQuery 解决方案,那么您的回答并不能解决他的问题。但是,您可以给他一个 javscript 解决方案并建议 jQuery 作为替代方案。
    猜你喜欢
    • 2019-10-31
    • 2011-08-15
    • 2013-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    相关资源
    最近更新 更多