Javascript 计算表单输入,一个由选择框修改
我需要根据用户在下表中的输入进行计算。在这里使用jQuery计算插件时:我能够计算出如何执行多少个会话?学生人数乘以前两项每节课的费用。真正让我感到困惑的是最下面的一个,除了用户填写会话数量之外,我还需要他们从选择框中选择学生数量。有什么想法吗Javascript 计算表单输入,一个由选择框修改,javascript,jquery,Javascript,Jquery,我需要根据用户在下表中的输入进行计算。在这里使用jQuery计算插件时:我能够计算出如何执行多少个会话?学生人数乘以前两项每节课的费用。真正让我感到困惑的是最下面的一个,除了用户填写会话数量之外,我还需要他们从选择框中选择学生数量。有什么想法吗 <table> <tr><th>How many sessions?</th><th>Number of Students</th><th>Type of tutorin
<table>
<tr><th>How many sessions?</th><th>Number of Students</th><th>Type of tutoring</th><th>Cost Per Session</th><th>Total Cost</th></tr>
<tr><td><input type="text" name="qty_academic" size="3" /></td><td id="num_students">1 Student</td><td>Academic Tutoring</td><td id="price_item_1">$55.00</td><td id="total_item_1">$0.00</td></tr>
<tr><td><input type="text" name="qty_multi" size="3" /></td><td id="num_students">1 Student</td><td>ML Tutoring</td><td id="price_item_2">$60.00</td><td id="total_item_2">$0.00</td></tr>
<tr><td><input type="text" name="qty_group" size="3" /></td><td><select name="group_size" id="num_students">
<option value=""></option>
<option value="2">2 Students</option>
<option value="3">3 Students</option>
<option value="4">4 Students</option>
</select></td><td>Group Tutoring</td><td id="price_item_3"></td><td id="total_item_3">$0.00</td></tr>
<tr><td> </td><td> </td><td colspan="2" align="right"><h3>Grand Total:</h3></td><td id="grandTotal"></td></tr>
这使得对下拉框的更改更新价格。现在,我如何根据下拉框中选择的内容确定价格 在我看来,jQuery应该抱怨这个问题。无论如何,问题的根源实际上是存在多个属性id值相同的元素。这是显示问题的代码摘录:
<td id="num_students">1 Student</td>
<td id="num_students">1 Student</td>
<select name="group_size" id="num_students">
结果元素不是您想要的,而是第一个TD
希望这对进一步的调查和代码重构有所帮助
-更新-
我修正了你的代码,请看一看它是否适合你。如果不让我知道
基本上,我解决了相同值的多个id的问题,并添加了隐藏字段,以便始终有多个学生进行乘法。最后,我在选择框中附加了一个onchange事件
对于小组辅导,动态计算价格也有一些逻辑 按时间顺序放更新,而不是放在最上面,这样很难阅读…哇。哇。我没想到会有其他结果。我用了一个丑陋的黑客只是为了让它工作。我在2个学生旁边做了一个下拉显示,每个选项的值就是这么多学生的成本。通过这种方式,我可以显示该行的总计,但不能显示单位值。我甚至都不满意,但从功能上来说,它是有效的,我有一个最后期限,所以我就放手了。我不得不重新编写一点PHP来弥补这个缺陷,但我还是很高兴。非常感谢。
<td id="num_students">1 Student</td>
<td id="num_students">1 Student</td>
<select name="group_size" id="num_students">
students: $("[id^=num_students]")