选中特定框时,删除选择菜单上的属性已禁用

时间:2016-01-13 14:47:25

标签: php jquery

我尝试从选择菜单中删除禁用属性的代码块将我的复选框验证返回为true。如何在不弄乱我的验证的情况下正确删除已禁用的属性?

while($row = mysqli_fetch_assoc($query)){
echo "<h5><input class='check' panel-menu='menu$index'
type='checkbox' name='roomType[]' id='roomType[$index]' 
value='".$row['roomDetailsNo']."'> Choose this Room";

echo "<br>Number of Rooms:&nbsp;";
                echo "<select id='menu$index' name='noOfRooms[".$row['roomDetailsNo']."][]' disabled>";
                $rooms = 0;
                while($rooms <= $row['available_rooms']){
                echo "<option>";
                echo $rooms;
                echo "</option>";
                $rooms++;
                }
                echo "</select><br>";
}

这是我的jquery

<script>

$(function(){
    $('#btn').on('click', function(){
        var check = $("input:checked").length;
        if(check <= 0){
            alert("Please Choose a Room");
            return false;
        }
        else{
            $('.check').on('click', function{
            var check = $(this).attr('panel-menu');
            checkbox = $('#'+check).is(':checked');
                if(checkbox){
                    $('#'+check).prop('disabled', false);
                    alert("checked");
                }
            });
            return true;
        }
    });
});

</script>

1 个答案:

答案 0 :(得分:1)

在这种情况下,不要将一个function retr_decs(args) { return /\./.test(args) && args.match(/\..*/)[0].length - 1 || "no decimal found" } console.log( retr_decs("23.456") // 3 , retr_decs("9.450") // 3 , retr_decs("123.01") // 2 , retr_decs("123") // "no decimal found" )事件处理程序包含在另一个click事件处理程序中 分别验证click#btn点击次数:

.check

JSFiddle demo

您应使用data-*属性,而不是自定义$('#btn').on('click', function(){ var check = $("input:checked").length; if(check <= 0){ alert("Please Choose a Room"); return false; } }); // you missing parenthesis for function "()": $('.check').on('click', function(){ // use data-* attributes (explanation below the code) var check = $(this).attr('data-panel-menu'); if($(this).is(':checked')){ $('#'+check).prop('disabled', 0); }else{ // if checkbox isn't checked, set the first option as default: $('#'+check).prop('disabled', 1).children(':first').prop('selected', 1); } }); 属性。 See why