您的位置:首页 > Web前端 > BootStrap

Bootstrap中使用modal如果表格里checkbox未选中弹出提示框

2015-02-16 11:07 597 查看
在做项目的时候因为bootstrap里套用了modal作为弹框功能,所以点击按钮以后直接弹出modal弹框,再填入数据执行添加删除操作。

但是在删除条目的时候希望能达到一点需求是对于checkbox的检测,要先选择一条数据然后才执行删除的操作,来来这是我们的表格和checkbox(见下图),

按照网上的一些解决方案是另外写个JS然后去判断点击按钮时触发检测的机制。咨询了同事,说如果点击以后要先弹框提示说要先选择checkbox,这需要修改Bootstrap的JS库,遗憾自己的水平没有达到那么高去修改JS库,而且怕改了以后另一个添加的会受到影响。

所以采用了第二种方式,即在modal里面先弹出modal的弹框,然后点击提交的按钮时,再弹出提示框说先选择checkbox。以下的代码也是基于这种情况。

这是针对delete按钮写的jquery和ajax function:

$('#deleteFunc').click(function() {
	var checkbox = document.getElementsByName("checkbox"); 
        var select = Array(); 
        for (var i=1;i<checkbox.length;i++) {
            if (checkbox[i].checked == true) {
                select[i] = checkbox[i].getAttribute("id");	//将checkbox的id存入数组  
            }
        }
	
       <span style="color:#99FF99;"> <span style="color:#33CC00;">//关键步骤,因为这里是判断数组是否为空(如果未选中则为空),所以弹出对话框提示说至少要选择一个checkbox</span></span>
	if(select.length==0){
		alert('Please select at least one checkbox!');	
	}	

 	for (var j = 0; j < select.length; j++) {       

    $.ajax({
            url: "<?php deleteFunc.php ?>",
            type: 'POST',
            data: "userid="+select[j], 
            success: function(data) {
            alert("delete user complete!");
            $(".close").click();
            location.reload(); //刷新
            }
        });
            }
        });
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: