繁体   English   中英

JavaScript警报未显示

[英]JavaScript alert doesn't show

我试图建立一个选择选项菜单。 如果用户选择第一个(默认)选项,则应显示警报窗口,但不显示。 需要帮助,谢谢!

这是我的HTML代码

    <select name="sets" id ="selectset">
        <option value="General">Select Set</option>
        <option value="The Happy Couple">Ceremony</option>
        <option value="Ceremony">Ceremony</option>
        <option value="Lunch">Lunch</option>
        <option value="Garden">Garden</option>
        <option value="Longname">This is max length</option>
      </select>
     <input type="button" class="form_button" id="movetoset" value="  Move Marked to Set">

这是我的JavaScript代码

    $('#movetoset').click(function() {      

              if(document.getElementById("selectset").value == "General"){
                  alert("Please choose a set");
              }
    }

为什么不使用jQuery来获取select的值呢?

http://jsfiddle.net/davelnewton/CUGva/

将html代码更改为

<input type="button" class="form_button" onclick="checkFunct()" id="movetoset" value="  Move Marked to Set">

并添加JavaScript

function checkFunct() {
    if(document.getElementById("selectset").value == "General"){
              alert("Please choose a set");
          }
  }

您需要确保发布的JavaScript代码为:

  • 在文档就绪(或加载)处理程序中,和/或
  • 页面源中的HTML之后

否则,当您尝试通过其ID选择按钮时,尚未解析按钮元素,因此将无法找到按钮元素,也不会附加任何点击处理程序。

尝试这个:

$(function() {
   // other document ready processing (if any) here

   $('#movetoset').click(function() {
      if($("#selectset").val() == "General"){
         alert("Please choose a set");
      }
   }

   // other document ready processing (if any) here
});

(注意$(function() {});$(document).ready(function(){});简写)

而且,只要您使用的是jQuery,为什么不使用其.val()函数?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM