我正在使用CodeCanyon的价格计算器,并且遇到了一些Javascript问题。
第一个字段根据学分时数计算学费金额。
第二个字段(我遇到麻烦)应该从第一个字段中选择信用小时数,除以3得到类的数量,然后乘以100得到数量教科书所需的钱。
我尝试用Javascript和一些ASP实现这个等式,但是没有成功。我不是Javascript专家,但这里是现在的代码。非常感谢任何帮助!
HTML标记
“f_4”和“f_7-textsbooks”是下面脚本中命名的变量。 f_4是选择的学分小时数。 在f_7-textbook中,我试图调用f_4的值,除以3并将其乘以数据库发送的值(因此,<%= budgetRS(“budget_BooksandSupplies_sem1”)%>),这是设为“100”。
<fieldset>
<p>1 class = 3 credit hours.</p>
<p>
<label>Number of Credit Hours: <input class="spinner" type="text" id="f_4" name="f_4" data-spinner='{"min": 0, "max": 42, "step": 3}' data-default="0" value="3" data-cost="<%=FormatNumber(budgetRS("budget_Tuition_sem1"), 2)%>"/></label>
<span class="staticPrice">
</span>
</p>
<p>
Textbook Estimate ($<%=budgetRS("budget_BooksandSupplies_sem1")%>/3 credit hours):
<input type="hidden" name="f_7-textbooks" value="{f_4}/3*<%=budgetRS("budget_BooksandSupplies_sem1")%>" />
</p>
</fieldset>
的Javascript
<script type="text/javascript">
$(function(){
var form = $('#jquery-order-form');
//form.find('span.staticPrice').remove();
form.find('option').each(function(i){
var opt = $(this)
opt.text(opt.val());
});
var items = [];
items['f_4'] = 'Credit Hours ($<%=budgetRS("budget_Tuition_sem1")%>/credit hour)';
items['f_7-textbooks'] = 'Textbook Estimate ($<%=budgetRS("budget_BooksAndSupplies_sem1")%>/credit hour)';
});
});
</script>
此计算器的完整代码位于http://media.briercrest.ca/calculators/collegecalculator.asp
答案 0 :(得分:1)
您正尝试在服务器端代码中使用客户端值,该代码无法访问此数据并导致输出。
<input type="hidden" name="f_7-textbooks" value="{f_4}/3*100">
您应该在客户端代码中仅使用客户端值,反之亦然。在服务器端。
以下代码应该获得您需要的值。
$('.ui-spinner-button').click(function() { $(this).siblings('input').change(); });
$('#f_4').spinner().change(function() {
var f4Val = $('#f_4').val();
var calcValue = (f4Val/3)*100;
$('input[name="f_7-textbooks"]').val(calcValue);
});
请参阅此fiddle