Jquery 基于值的动态fadeIn html

Jquery 基于值的动态fadeIn html,jquery,conditional,Jquery,Conditional,我正在使用jquery根据篮球系列赛的获胜者动态地发布内容。例如,让我们以NBA东部决赛为例。这是一个七选一的最佳系列。第一支赢得四场比赛的球队赢得了系列赛。因此,如果对于第一个输入标记,用户选择芝加哥公牛队作为他们的赢家。对于第二场比赛,用户选择迈阿密热队作为他们的赢家。根据目前为止的结果,jquery将不得不添加一个额外的输入标记,因为很明显,这个系列至少要进行5场比赛 这是非常基本的。但是,有没有人可以考虑一下如何进行这项工作,这样,如果客户要回去编辑游戏的赢家,他们就会相应地淡入淡出。我

我正在使用jquery根据篮球系列赛的获胜者动态地发布内容。例如,让我们以NBA东部决赛为例。这是一个七选一的最佳系列。第一支赢得四场比赛的球队赢得了系列赛。因此,如果对于第一个输入标记,用户选择芝加哥公牛队作为他们的赢家。对于第二场比赛,用户选择迈阿密热队作为他们的赢家。根据目前为止的结果,jquery将不得不添加一个额外的输入标记,因为很明显,这个系列至少要进行5场比赛

这是非常基本的。但是,有没有人可以考虑一下如何进行这项工作,这样,如果客户要回去编辑游戏的赢家,他们就会相应地淡入淡出。我可以使用很多条件语句来实现这一点,但我真的很想得到一些思考的素材,因为这涉及到一种更有效的方法

<script type="text/javascript">
$(document).ready(function(){
    var data = <?php echo $teamone_ac; ?>;
    var soulja = <?php echo $teamtwo_ac; ?>;

    var away_team_other = $('.away_team_other').html();
    var home_team_other = $('.home_team_other').html();

    var away_team_wild = $('.away_team_wild').html();
    var home_team_wild = $('.home_team_wild').html();

    $("#game_one_other").autocomplete({ source: data });
    $("#game_two_other").autocomplete({ 
        source: data,
        select: function(event, ui) 
        { 
            var game_one_other = $('#game_one_other').val();
            var game_two_other = ui.item.value;
            var game_three_other = $('#game_two_other').val();

            var arr = [game_one_other, game_two_other, game_three_other,       game_four_other, game_five_other];

            var away = away_team_other;
            var home = away_home_other;

            var numAway = $.grep(arr, function (elem) {
                return elem === away;
            }).length;

            var numHome = $.grep(arr, function (elem) {
                return elem === home;
            }).length;

            if(game_one_other != game_two_other)
            {
                $('#one_four').fadeIn('slow');
            }
        }   
    });
    $("#game_three_other").autocomplete({ 
        source: data,
        select: function(event, ui) 
        { 
            var game_one_other = $('#game_one_other').val();
            var game_two_other = $('#game_two_other').val();
            var game_three_other = ui.item.value;

            if(game_two_other == game_three_other && game_two_other != game_one_other)
            {
                $('#one_four').fadeIn('slow');
            }
        }   
    });

    $("#game_one_wild").autocomplete({ source: soulja });
    $("#game_two_wild").autocomplete({ source: soulja });
    $("#game_three_wild").autocomplete({ source: soulja });

    $('#one_four').hide();
    $('#one_five').hide();

    $('#two_four').hide();
    $('#two_five').hide();
});

你有一张表格。在这种情况下,表单至少有n个元素,n=4。每个元素大概都是一个select/radio,用户可以从任意一个团队中进行选择

<form id="predictWinners" action="submitPredict" method="POST">
     <fieldset id="first">
        <legend>Game 1</legend>
        <input class="prediction" type="radio" name="winner" value="[team 1 here]" /> [team 1 here]
        <br />
        <input class="prediction" type="radio" name="winner" value="[team 2 here]" checked="checked" /> [team 2 here]
        <br />
     </fieldset>
     <!-- repeat for first 4 -->
    <input type="submit" value="Submit" />
</form>
这些可能不完全正确,但我认为很接近。播放排列。一旦你算出Q,用正确的公式更新Q
你有没有一个有效的例子来更好地说明这个想法。让我们不要这样做,说我们做到了。
jQuery(document).ready(function(){
  jQuery(".prediction").change(function() { 
        gamesNec = findGamesNecessary();
        if(gamesNec > 4)
        {
           jQuery("fieldset").each(function(index){ 
              if(index > 4 && index <=gamesNec) { jQuery(this).fadeIn()  } 
           });
        }
   });
 })
bestOf = function(x) {
   return (x % 2 == 0) ? (x / 2) : ((x/2)+0.5)  
}

findGamesNecessary = function() {
   seriesLength = 7
   team1_wins = 0
   team2_wins = 0
   //iterate through each user selection and update the wins. Left as an exercise
   gamesPlayed = team1_wins + team2_wins 
   gamesNecessary = (team1_wins >1 && team2_wins > 1) ? bestOf(seriesLength-gamesPlayed) +  gamesPlayed : bestOf(seriesLength)
   return gamesNecessary;
}