私は3つのチェックボックスを持つビューを持っています:
<div class="tourny-games">
<h4>Games</h4>
<div class="checkboxOptions games show-tabs">
<div class="show-tab">
<div class="checkbox uncheckBoxed">
<input id="" name="" onclick="toggleCheckboxImage(this, '');" type="checkbox" value="1" />
</div>
<img src="https://s3.amazonaws.com/...iconlol.png.jpg" class="game-logo-label" />
</div>
# two more checkboxes here
</div>
</div>
タブを作成する:
<div class="tabs">
<% @games.each do |game| %>
<a href="#<%= game.striped_name %>" game="<%= game.id %>" game-type="<%= Game::TEAM_GAMES.include?(game.name) ? "team" : "single" %>" class="tab" style="<%= "display:none;" unless @tournament.game_ids.include?(game.id) %>">
<%= game.name %>
</a>
<% end %>
</div>
このjquery経由:
$('.show-tabs .show-tab').live('click', function(){
var tab = $('.tabs .tab:nth-of-type(' + ( $(this).index() + 1 ) + ')');
...
if ($(this).find('.checkbox').hasClass('checkBoxed')){
tab.show();
...
} else {
tab.hide();
}
});
この回答に基づいて、設定する次のコードがあります@game_type
コントローラ:
def game_type
@game_type = params[:game_type]
end
jquery:
if ($(this).find('.checkbox').hasClass('checkBoxed')){
tab.show();
$.get('tournaments/game_type?game_type='+tab.attr("game-type"))
でテストtab.attr("game-type")
しalert
たので、必要な変数をプルしていることがわかります-またはのいずれteam
かを返しますsingle
が、ページのさらに下にある他のRailsコードで条件付きチェックを行う必要があります-どうすればできますか?
たとえば、次の疑似コードは、私が行う必要があることの 1 つを示しています。
if @game_type == "team"
"Team Name"
else
"Player Name"
end
変数がRailsでロードされているため、空白になることはわかってい@game-type
ますが、AJAXの出番であり、少し混乱している場所でもあります。 この質問は、私が求めていることに関連しているように見えますが、自分のコードで動作させることができないほど十分に異なっています。