验证失败后,无法停止自动模式从关闭按钮单击

时间:2017-11-03 18:31:50

标签: jquery twitter-bootstrap

我知道这个问题已被问过几次,但使用e.preventDefault()或event.preventDefault()似乎对我没用。

这是代码段:

<?php
	// if(isset($_GET['submit_btn'])){ // remove this !!!
		if($_GET['type']=='numberic'){
			if(isset($_GET['zerotonine'])){
				echo '0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9';
			}elseif(isset($_GET['evennumberic'])){
				echo '0 - 2 - 4 - 6 - 8';
			}elseif(isset($_GET['oddnumberic'])){
				echo '1 - 3 - 5 - 7 - 9';
			}
			else{
				echo '0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9<br>';
				echo '0 - 2 - 4 - 6 - 8<br>';
				echo '1 - 3 - 5 - 7 - 9<br>';
			}
		}elseif($_GET['type']=='charactic'){
			if(isset($_GET['zerotonine'])){
				echo 'Zero - One - Two - ... - Eight - Nine';
			}elseif(isset($_GET['evennumberic'])){
				echo 'Zero - Two - Four - Six - Eight';
			}elseif(isset($_GET['oddnumberic'])){
				echo 'One - Three - Five - Seven - Nine';
			}
			else{
				echo 'Zero - One - Two - ... - Eight - Nine<br>';
				echo 'Zero - Two - Four - Six - Eight<br>';
				echo 'One - Three - Five - Seven - Nine<br>';
			}
		}
//	} // end of the if to remove 
    print_r($_GET); // TODO: remove when above cases are working
?>

如果在模态中选择了多个图像,它会提醒消息,但会关闭不应该显示的模式。只有当用户选择一个图像然后点击&#34; save&#34;时,模式才会关闭。

$(".save").on("click", function (e) {
     e.preventDefault();
    var noImages = $('input[name="pics[]"]:checked').length;
        if(noImages > 1) {
            alert("Only one image allowed");
        } else {
        // allow selection and close modal

1 个答案:

答案 0 :(得分:1)

如果要控制模式的关闭,则应从html中删除data-dismiss="modal"。然后问题就是在你想要的时候触发关闭。

Bootstrap为.modal('hide')提供了一个句柄。例如,在您的保存点击处理程序中:

$(".save").on("click", function (e) {
    e.preventDefault();
    var noImages = $('input[name="pics[]"]:checked').length;
    if(noImages > 1) {
        alert("Only one image allowed");
    } else {
        $(e.target).closest('.modal-dialog').modal('hide');
    }
});

如果你的模态有id,你也可以找到它而不是closest