我正在使用一个看起来像切换框的自举开关,它可以在一次点击中切换这两个值。这是切换代码。
<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">
每当有人点击此开关时,开关切换到左右或左右开启文本。
我想要“数据文字”和&amp;隐藏框中的“数据偏离文本”或至少是真正的错误状态。
这是我想要值的隐藏输入。
<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
答案 0 :(得分: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);
}
});