javascript – 取消下拉列表更改事件时如何设置上一个值

前端之家收集整理的这篇文章主要介绍了javascript – 取消下拉列表更改事件时如何设置上一个值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在设计一个html页面.
我想显示一个关于使用 jqueryjavascript更改下拉元素的确认消息.
请帮忙做到这一点.

我有代码会要求确认.选择取消时,它不会选择下拉项的前一项.

$("#dropdownId").change(function(e) 
{
        if($(this).val() == "40")
        {
            if(confirm("Are you sure"))
                return true;
            else
                return false;
        }
});

谢谢

解决方法

您应该能够将以前的值存储在click事件上,并将其设置回change事件:
var setLastSelected = function(element) {
   $(element).data('lastSelected',$(element).find("option:selected"));
};

$("select").each(function () {
   setLastSelected(this);
});

$("select").change(function(){        
      if(confirm("Are you sure")) { 
          setLastSelected(this);
          return true; 
      }
      else {
         $(this).data('lastSelected').attr("selected",true);
         return false;
      }
});

见:http://jsfiddle.net/w9JYX/14/

更新:我更新了代码以更一般地在一组下拉控件上工作,并且还删除了单击处理程序.

猜你在找的JavaScript相关文章