Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery函数设置引导开关状态_Javascript_Jquery_Twitter Bootstrap_Bootstrap Switch - Fatal编程技术网

Javascript 使用jquery函数设置引导开关状态

Javascript 使用jquery函数设置引导开关状态,javascript,jquery,twitter-bootstrap,bootstrap-switch,Javascript,Jquery,Twitter Bootstrap,Bootstrap Switch,我试图用两个外部按钮设置引导开关的状态,代码如下: <div> <input type="checkbox" name="switch" id="switch" value="1" data-on-text="ON" data-off-text="OFF" /> </div> <div> <a id="set_on">ON</a> <a id="

我试图用两个外部按钮设置引导开关的状态,代码如下:

    <div>
        <input type="checkbox" name="switch" id="switch" value="1" data-on-text="ON" data-off-text="OFF" />
    </div>

    <div>
        <a id="set_on">ON</a>
        <a id="set_off">OFF</a>
    </div>

<script src="assets/jquery.min.js" type="text/javascript"></script>
<script src="assets/jquery-ui.min.js" type="text/javascript"></script>
<script src="assets/bootstrap.min.js" type="text/javascript"></script>
<script src="assets/bootstrap-switch.js"></script>
<script>
    $("#switch").bootstrapSwitch();
    $( "#set_on" ).click(function() {
        $("#switch").bootstrapSwitch('setState', true);
    });
    $( "#set_off" ).click(function() {
        $("#switch").bootstrapSwitch('setState', false);
    });
</script>

在…上
关
$(“#开关”).bootstrapSwitch();
$(“#设置启用”)。单击(函数(){
$(“#开关”).bootstrapSwitch('setState',true);
});
$(“#抵消”)。单击(函数(){
$(“#开关”).bootstrapSwitch('setState',false);
});
单击打开或关闭开关no的按钮不会切换其状态。 在浏览器的控制台上,我看到以下错误: 类型错误:$(…)。引导开关不是函数

如果我尝试以这种方式在函数外部设置引导开关的状态:

<script>
    $("#switch").bootstrapSwitch();
    $("#switch").bootstrapSwitch('setState', false);
</script>

$(“#开关”).bootstrapSwitch();
$(“#开关”).bootstrapSwitch('setState',false);

开关正确切换到打开状态。

尝试将代码包装到
$(document).ready(function(){})以便在执行jQuery代码之前加载所有DOM元素,如下所示:

<script>
$( document ).ready(function() {
    $("#switch").bootstrapSwitch();
    $("#switch").bootstrapSwitch('setState', false);
});
</script>

$(文档).ready(函数(){
$(“#开关”).bootstrapSwitch();
$(“#开关”).bootstrapSwitch('setState',false);
});
试着像这样在完整脚本中使用它-

<script>

 $( document ).ready(function() {
    $("#switch").bootstrapSwitch();
    $( "#set_on" ).click(function() {
        $("#switch").bootstrapSwitch('setState', true);
    });
    $( "#set_off" ).click(function() {
        $("#switch").bootstrapSwitch('setState', false);
    });
});

</script>

$(文档).ready(函数(){
$(“#开关”).bootstrapSwitch();
$(“#设置启用”)。单击(函数(){
$(“#开关”).bootstrapSwitch('setState',true);
});
$(“#抵消”)。单击(函数(){
$(“#开关”).bootstrapSwitch('setState',false);
});
});

请用以下代码替换您的代码:

    <script type="text/javascript">
    $( document ).ready(function() {
    $("#switch").bootstrapSwitch();

    $( "#set_on" ).click(function() {
        $("#switch").bootstrapSwitch('state', true);
    });
    $( "#set_off" ).click(function() {
        $("#switch").bootstrapSwitch('state', false);
    });
    });
    </script>

$(文档).ready(函数(){
$(“#开关”).bootstrapSwitch();
$(“#设置启用”)。单击(函数(){
$(“#开关”).bootstrapSwitch('state',true);
});
$(“#抵消”)。单击(函数(){
$(“#开关”).bootstrapSwitch('state',false);
});
});

您可以尝试使用
bootstrapSwitch()
,类似于

$(“[name='status']”)。bootstrapSwitch()

以这种方式,我遇到了相同的错误:TypeError:$(…)。bootstrapSwitch不是一个函数。无论如何,我对您发布的代码没有问题,但在最上面;)您发布的没有$(document).ready(function(){})就可以正常工作;对不起,这是我的错误,我发现了问题,我在文件底部有其他一些js文件。如果我把脚本放在底部工作正常,很抱歉我浪费了你的时间,方法名必须是
set
而不是
setState
。很抱歉,是我的错误,我发现了问题,我在文件底部有其他一些js文件。如果我把脚本放在底部,效果很好,很抱歉我浪费了你的时间对我来说最大的收获是op的
“setState”
应该是
“state”