代码片段如下:
$('.fee_checkbox').on("change",function() {
if ($(this).prop('checked')==false) {
$('.actual_pay').val('0');
} else {
$('.actual_pay').val();
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" checked="checked" class="fee_checkbox">
<input type="text" class="actual_pay" value="1000">
&#13;
此处选中复选框的默认行为,并且类actual_pay
的输入框的值为1000.当用户取消选中时
复选框,actual_pay
的值更改为0。
此后,当用户再次单击该复选框时,我需要返回1000的值,但现在返回0。当用户取消选中并选中复选框时,我需要获得1000的值。
答案 0 :(得分:3)
您可以将值存储为data-
像
<input type="text" class="actual_pay" value="1000" data-value="1000">
这是一个片段:
$('.fee_checkbox').on("change",function() {
if ($(this).prop('checked')==false) {
$('.actual_pay').data("value",$('.actual_pay').val()) ;
$('.actual_pay').val( 0 );
} else {
$('.actual_pay').val( $('.actual_pay').data("value") );
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" checked="checked" class="fee_checkbox">
<input type="text" class="actual_pay" value="1000" data-value="1000">
答案 1 :(得分:1)
正如您所说,您需要取回新输入的值,因此您需要使用data-attributes
。
输入新值,此代码段显示如何取回这些新值。
$('.fee_checkbox').on("change", function() {
var $actualPay = $('.actual_pay');
if ($(this).prop('checked') == false) {
$actualPay.data('current', $actualPay.val())
$actualPay.val(0);
} else {
$actualPay.val($actualPay.data('current'));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" checked="checked" class="fee_checkbox">
<input type="text" class="actual_pay" value="1000" data-value="1000">