我正在尝试执行以下操作。
这是我的模态
<div class="modal fade" id="group_selection" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="myModalLabel">Select the journal club for which this vote should count</h4>
</div>
<div class="modal-body">
<form>
{% for group in groups %}
<input class="group_sel" type="checkbox" value="{{ group[0] }}">{{ group[0] }}
</input><br>
{% endfor %}
</form>
</div>
<div class="modal-footer">
<input class="btn btn-primary multivote" type="submit" data-dismiss="modal" value="Select" />
<input class="btn btn-default" type="button" data-dismiss="modal" value="Close" />
</div>
<!-- </form> -->
</div>
上面的模式显示了一组选择。这个选择对于每个模态是相同的,所以它工作正常,但现在我想在for循环中禁用输入语句,具体取决于按下哪个按钮来进入此模态。
我不知道如何在html中创建新变量。我希望jQuery可以帮助解决这个问题,所以我使用以下jQuery命令触发模态
<script type="text/javascript">
$(document).ready(function(){
$(".vote").click(function(){
$('#group_selection').modal('show');
});
});
</script>
我知道我可以使用jQuery将值写入html代码(如此处Passing data to a bootstrap modal所示)但我不知道如何使用它来进行if选择?
感谢您的帮助
最好
卡尔
答案 0 :(得分:0)
在显示模态之前,只需确定点击了哪个.vote
按钮并执行了相应的任务,即:
$(".vote").click(function(){
switch($(this).attr('value'))
{
case '5 Stars': // Assumes your button's value was '5 Stars'
$('#group1').attr('disabled','disabled'); //disables group1 when 5 stars was selected
break;
case '4 Stars': ... break;
}
$('#group_selection').modal('show');
});
或者,为每个不同的按钮分配一个不同的.click()
处理程序来执行相应的任务。
附注:您还应该在打开模态时重置所有禁用,并重置表单以使每个加载新鲜