下面是我的工作代码,但唯一的问题是,我希望默认情况下选中该复选框并在页面加载时显示 jquery 输出,但仅当我重新选中该复选框时才显示输出。
http://jsfiddle.net/pratyush141/2mq5sr1h/
$(function() {
$defaultValue = $('.total').val();
$("input[type=checkbox]").click(function(event) {
var total = 0;
$("input:checked").each(function() {
total += parseInt($(this).parent().find('.inv-total').text().substring(1));
});
if (total == 0) {
$('.total').val($defaultValue);
} else {
$('.total').val('$' + total);
}
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<div class="invoice">
<input type="checkbox" checked='checked' value="1" />
<span class="inv-total">$100</span>
</div>
<input type="text" class="total" value="$90" />
最佳答案
很简单,只要把checkbox中的checked=checked去掉,然后用jquery调用checkbox的点击即可
<div class="invoice">
<input type="checkbox" value="1" />
<span class="inv-total">$100</span>
</div>
$(function () {
$defaultValue = $('.total').val();
$("input[type=checkbox]").change(function (event) {
var total = 0;
$("input:checked").each(function () {
total += parseInt($(this).parent().find('.inv-total').text().substring(1));
});
if (total == 0) {
$('.total').val($defaultValue);
} else {
$('.total').val('$' + total);
}
});
//Call the click on checkbox
$("input[type=checkbox]").click();
})
工作 fiddle :http://jsfiddle.net/2mq5sr1h/5/
关于javascript - 页面加载时选中复选框并显示输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28978358/