0

我正在使用一个引导开关,它看起来像切换框,可以通过单击切换两个值。这是开关代码。

<input class="bt-switch transaction_type_filter" type="checkbox" checked data-on-text="Buy" name="transaction_type_filter" id="transaction_type_filter" data-off-text="Rent" data-on-color="primary" data-off-color="warning">

每当有人单击此开关时,开关就会切换到左右或左右,并带有开关文本。

我想要隐藏框中的“文本数据”和“文本数据”,或者至少是真正的错误状态。

这是我想要值的隐藏输入。

<input class="prop_state" type="hidden" value="" id="prop_state">

我已经尝试了其中的一些代码来获得所需的结果。

    $(document).on('click', '#transaction_type_filter', function () {
    alert($('#transaction_type_filter').bootstrapSwitch('state'));
    alert($('#transaction_type_filter').bootstrapSwitch('toggleState'));
    console.log($('#transaction_type_filter').bootstrapSwitch('toggleState'));
    console.log($('#transaction_type_filter').bootstrapSwitch('state'));
});

并且还尝试了其他一些脚本。

 $(document).ready(function() {
 $('.transaction_type_filter').on('switch-change', function (e, data) {
    var $el = $(data.el)
      , value = data.value;
    if($('#transaction_type_filter').bootstrapSwitch('state') === true){//this is true if the switch is on
       alert('true');
    }else{
       alert('false');
    }
});
 });

我在 jquery 或 js 中工作的经验并不多。我只是在尝试。把我当作初学者。感谢您提前提出任何建议。

这是jsfiddle

4

1 回答 1

0

感谢朋友的帮助。我得到了获取引导开关状态的正确方法。这是代码。

 $('#transaction_type_filter').on('change.bootstrapSwitch', function (e, state) {
    console.log(e.target.checked);
    alert(e.target.checked);
    if (e.target.checked == true) {
        $value = 'buy';
        $('input.prop_state').val($value);
    } else {
        $value = 'rent';
        $('input.prop_state').val($value);
    }
});
于 2017-03-15T12:12:53.500 回答