javascript - 根据输入类型确定值

标签 javascript jquery html

我有一个选择类型下拉列表,选择后会将用户重定向到另一个页面。我希望他们在使用此选择下拉菜单时,如果他们尝试在不保存的情况下导航离开,我会收到警告。

但是,当确定输入类型已更改时,它需要忽略此特定的选择类型作为输入类型之一。这是我的脚本,但它没有执行所需的操作(其中 .send1 引用实际的选择类型):

 $(document).on('change', '.send1', function(){ 
     if($(":input").not('.send1')){
         $(":input").change(function(){
         unsaved = true;
        });
     }
  });

如果未保存 == true,则用户会收到警告,指出存在未保存的更改。

最佳答案

.not() 方法返回一个 jQuery 对象,并且对象在 JavaScript 中被视为真值,您应该使用 length 属性来检查该对象的长度收藏。但这不是主要问题,整个逻辑听起来并不乐观。如果您想从选择中排除某个元素,您可以在选择器中使用 :not :

var unsaved = false;

$(document).on('change', '.send1:not("select.specific")', function() {
      unsaved = true;
}); 

$('select.specific').on('change', function() {
   if (unsaved) {
      // show a modal/alert something...
   } else {
     // redirect
   }
});

关于javascript - 根据输入类型确定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26593655/

相关文章:

php - 如何将 &lt;/script&gt; 替换为 </scr"+"ipt>

javascript - 我如何检查一个函数的所有表单元素都不为空?

javascript - 返回大括号在 javascript 中意味着什么(例如 return { init : init} )

javascript - jQuery - 滑动到 id .stop();相等的

Jquery sticky nav 在滚动时添加背景色

javascript - 按键组合的奇怪问题

java - 无法使用 Selenium 和 Java 单击 Web 元素

html - 具有多个父项的 CSS 中的数据树

javascript - 在 Wordpress 中显示 IE8、IE7、IE6 的浏览器升级警告

javascript - MVC 和 Jquery 验证 : Disabled Dropdownlists gets validate, 如何让它不发生