小编joh*_*nyb的帖子

jquery if/else阻塞问题

我遇到了if/else块的问题.问题是else块总是在执行.当发生单击时,如果两个select元素都具有"current-drop"类,则只应执行if块.

但是,由于在if块的末尾删除了这两个类(稍后使用该change()方法再次添加类),我认为这导致了else块的执行.是因为当删除类时,click事件没有完成触发,导致条件发生变化?

我该如何解决这个问题?

$('.add-button').click(function() {

var class1=$("#select-pub").attr('class');
var class2=$("#select-segment").attr('class');

if ((class1=='current-drop') && (class2=='current-drop')) {

    $('<li />', {text: $('#select-pub option:selected').text()})
    .appendTo('div #publisher-results ul');
    $('<li />', {text: $('#select-segment option:selected').text()})
    .appendTo('div #segment-results ul');
    $('#select-pub').removeClass('current-drop');
    $('#select-segment').removeClass('current-drop');
    $('#error-message').css('visibility','hidden');
}

else
{
    $('#error-message').css('visibility','visible');
}

});
Run Code Online (Sandbox Code Playgroud)

编辑:这是页面 - 是的,我知道它现在有点混乱......

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Group Commerce | Dashboard</title>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

    <link type="text/css" rel="stylesheet" href="fancybox/jquery.fancybox-1.3.1.css"/>
   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript" src="js/add-items-over.js"></script>
    <script type="text/javascript" src="fancybox/jquery.fancybox-1.3.1.pack.js"></script>
    <script type="text/javascript">
    $(document).ready(function() { …
Run Code Online (Sandbox Code Playgroud)

jquery

1
推荐指数
1
解决办法
891
查看次数

标签 统计

jquery ×1