复选/取消复选框不能与prop功能一起工作

check/uncheck box is not working with prop fucntion

本文关键字:prop 功能 一起 工作 不能 取消 复选框 复选      更新时间:2023-09-26

我用了.prop, .attr, .removeAttr,似乎都不起作用。

$.ajax({
                    type:"post",
                    url:"{{base_url()}}admin/configurations/GetFormData/"+FormID,
                    dataType:"json",
                    success:function(response){
                        console.log(response);
                        if(!($.isEmptyObject(response))){
                            $.each(response,function(key,value){
                                $("#formName").val(value.FormName);
                                $("#formPath").val(value.FormPath);
                                $("#formCIPath").val(value.FormCIPath);
                                if(value.IsMenuLink !=='0'){
                                    $("#isMenuLink").prop( "checked", true );
                                }
                                else{
                                    $("#isMenuLink").prop( "checked", false);
                                }
                                console.log(value.IsMenuLink);
                                //alert(value.ExtimatedIncome);
                            });
                        }
                    }
                }); //---  End of $.ajax  ---//

Json返回IsMenuLink到"1""0"

所以当它是"1"时,我希望它被选中,而在"0"时,它应该被选中。

但问题是无论我使用prop或attr都不会影响复选框

顺便说一句,我正在使用开关复选框。

HTML

<input class="make-switch" id="isMenuLink" type="checkbox" data-on-color="success" data-on-text="Yes" data-off-text="NO" data-off-color="danger">

好了,我终于找到了解决方案,我不知道它是不是最适合我的。但至少它是有效的。如果谁有更好的jquery建议,请回答,使jquery更简短。

无论如何,问题不在于if/else语句,也不在于。prop.

但我使用的是引导开关复选框,当页面加载添加类和做的东西…

然而,事实证明我必须将类从off更改为on以更改复选框值。

                        if(value.IsMenuLink !=='0'){
                            $("#isMenuLink").parent().parent().removeClass('bootstrap-switch-off');
                            $("#isMenuLink").parent().parent().addClass('bootstrap-switch-on');
                        }
                        else{
                            $("#isMenuLink").parent().parent().removeClass('bootstrap-switch-on');
                            $("#isMenuLink").parent().parent().addClass('bootstrap-switch-off');
                        }

如果有人可以建议更好的jquery比这个更短的交换类,请告诉。