单选按钮在返回false元素内失去功能

时间:2013-05-23 16:27:23

标签: jquery html forms radio-button modal-dialog

所以我有一个带表格的模态。表单有两个单选按钮:

enter image description here

我有这个,如果用户点击它,它会停止模态关闭:

$(".modal-content").click(function(e){
    return false;
});

然而,这会阻止选择单选按钮(在FF中),而在Google / Fiddle中,您可以选择一次,但不能再次选择。

有没有人知道这方面的方法?

我试过这个:

$("input:radio").click(function(e){
    return true;
});

但它不起作用。

以下是一些代码and the fiddle

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        // Prevents the modal from closing if the user clicks inside the white box
        $(".modal-content").click(function(e){
            return false;
        });
        $("input:radio").click(function(e){
            console.log("working");
            return true;
        });
    });
</script>

Normal Buttons <br/>
<input type="radio" name="test"><span>Yes</span>
<input type="radio" name="test"><span>No</span><br/><br/>

Return false buttons:<br/>
<div style="border: 1px black solid;" class="modal-content">
    <input type="radio" name="loan"><span>Yes</span>
    <input type="radio" name="loan"><span>No</span>
    <br/><br/>
</div>

2 个答案:

答案 0 :(得分:2)

你必须停止传播,否则它将无法正常工作。

$("input:radio").click(function(e){
    e.stopPropagation();
});

答案 1 :(得分:0)

抱歉,刚刚找到答案。你必须使用stopPropagation();而不是返回false,所以:

$(".modal-content").click(function(e){
    e.stopPropagation();
    //return false;
});