我目前有一个jQuery脚本,它在表格中添加两个值,即每克拉的价格和克拉(重量),以根据它的重量给出钻石的总价格。除此之外,我有一个输入字段,它增加了每克拉价格和钻石价格的百分比。我创建了一个重置按钮,以便用户可以重置其输入,但似乎不会将表中的值恢复为原始值。我的问题是我如何做到这一点,所以输入重置和它影响的值也改变了?请参阅下面的代码:
jQuery(document).ready(function () {
function iDoMathsGood() {
$('.amount').map(function () {
// get all of the elements we'll need to manipulate
var row = $(this).parent().parent();
var originalTtl = row.find('.price');
var adjusted = row.find('.adj_ct');
// get the numbers we'll need and do some math
var cts = Number(row.find('.weight').html());
var origPPCT = Number(row.find('.org_ct').html()) * 1000;
var markupPrct = Number($('#markup').val()) / 100;
var markedupCost = (origPPCT * markupPrct) + origPPCT;
// do a little more math them set the results
adjusted.html((markedupCost / 1000).toFixed(2));
originalTtl.html(((origPPCT * cts) / 1000).toFixed(2));
return $(this).html(((markedupCost * cts) / 1000).toFixed(2));
});
}
iDoMathsGood();
$('#markup').keyup(function () {
iDoMathsGood();
});
//button to reset input values
$("#btn").click(function(){
/* Single line Reset function executes on click of Reset Button */
$("#form")[0].reset();
});
});
/ ----更新---- /
我最终创建了一个值为0的提交按钮,这需要再次加载页面以刷新输入。这似乎有效,如果有人有任何建议或更实际的方法,我会很感激帮助。
<form id='form'>
<input class="percent" name="markup" id="markup" value="" />
<button id="reset" value="submit" class="button">Reset</button>
</form>
jQuery(document).ready(function ($) {
$('input#markup').click(function() {
$('#reset').val('');
return false;
});