Javascript 单击“选中输入”时,如何从跨度标记求和数字?
我需要当选中复选框时,将所有数字相加为总成本。我编写代码,但如果用户选中一个或2、4、全部,则执行所有状态将非常长且不专业。这个html代码Javascript 单击“选中输入”时,如何从跨度标记求和数字?,javascript,jquery,html,Javascript,Jquery,Html,我需要当选中复选框时,将所有数字相加为总成本。我编写代码,但如果用户选中一个或2、4、全部,则执行所有状态将非常长且不专业。这个html代码 <div class="features"> <h3>مميزات الكورس والسكن </h3> <hr class="style17"> <br><br><br>
<div class="features">
<h3>مميزات الكورس والسكن </h3>
<hr class="style17">
<br><br><br>
<div class="feature-details">
<h4>خيارات السكن </h4>
<div class="row skn-block">
<div class="col-sm-4">
<div> <input type="radio" name="gender" value="individ-price" id="individ-price-check" onclick="individPrice();"><label>
سكن فردى</label>
<span id="individ-price"><span id="num1">400</span>$</span>
</div>
</div>
<div class="col-sm-4">
<div><input type="radio" name="gender" value="family-price" id="family-price-check" onclick="familyPrice()"><label>سكن عائلى </label>
<span id="family-price"><span id="num2">500</span>$</span>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<div><input type="radio" name="gender" value="special-price" id="special-price-check" onclick="specialPrice()"><label>سكن خاص</label>
<span id="special-price"><span id="num3">500</span>$</span>
</div>
</div>
<div class="col-sm-4">
<div><input type="radio" name="gender" value="included-price" id="include-price-check" onclick="includePrice()"><label>سكن متضمن </label>
<span id="include-price"><span id="num4">500</span>$</span>
</div>
</div>
</div>
</div>
<div class="feature-details">
<h4>هل تحتاج توصيل من المطار </h4>
<div class="row">
<div class="col-sm-4">
<div><input type="checkbox" id="fromair-check" onclick="fromair();"><label>
نعم</label></div>
</div>
<span id="fromair">التكلفة :
<span id="num5"> 300</span>$</span>
</div>
<h4>هل تحتاج توصيل إلى المطار </h4>
<div class="row">
<div class="col-sm-4">
<div><input type="checkbox" id="toair-check" onclick="toair();"><label>
نعم</label></div>
</div>
<span id="toair">التكلفة :
<span id="num6">300</span>$
</span>
</div>
</div>
<div class="feature-details">
<h4>هل تحتاج إلى التامين </h4>
<div class="row">
<div class="col-sm-4">
<div><input type="checkbox" id="policy-check" onclick="policy();"><label>
نعم</label></div>
</div>
<span id="policy">التكلفة :
<span id="num7"> 300</span>$</span>
</div>
</div>
<div class="feature-details">
<h4> ارسال الأوراق باستخدام ال
HDL</h4>
<div class="row">
<div class="col-sm-4">
<div><input type="checkbox" id="hdl-check" onclick="hdlfun();"><label>
نعم</label></div>
</div>
<span id="hdl">التكلفة :
<span id="num8">200</span>$</span>
</div>
</div>
<div class="feature-details">
<div class="row">
<div class="col-sm-4">
<label>رسوم التسجيل </label>
</div>
<div class="col-sm-3">
<label>التكلفة :
100$ </label>
</div>
</div>
</div>
<button class="save-send" onclick="senddetail()"> حفظ وارسال</button>
</div>
مميزات الكورس والسكن
خيارات السكن
سكن فردى
400$
سكن عائلى
500$
سكن خاص
500$
سكن متضمن
500$
هل تحتاج توصيل من المطار
نعم
التكلفة :
300$
هل تحتاج توصيل إلى المطار
نعم
التكلفة :
300$
هل تحتاج إلى التامين
نعم
التكلفة :
300$
ارسال الأوراق باستخدام ال
高密度脂蛋白
نعم
التكلفة :
200$
رسوم التسجيل
التكلفة :
100$
حفظ وارسال
这是我的js代码
<script>
var chkbasicindivid = document.getElementById("individ-price-check");
var chkbasicspecial = document.getElementById("special-price-check");
var chkbasicinclude = document.getElementById("include-price-check");
var chkbasicfamily = document.getElementById("family-price-check");
var chkpolicy = document.getElementById("policy-check");
var chkfromair = document.getElementById("fromair-check");
var chktoair = document.getElementById("toair-check");
var chkhdl = document.getElementById("hdl-check");
function senddetail(){
if ((chkbasicspecial.checked)&(chkpolicy.checked)&(chkfromair.checked)&(chktoair.checked)&(chkhdl.checked)){
var totalprice =0;
alert((parseInt(($("#num3")).text()))+(parseInt(($("#num5")).text()))+(parseInt(($("#num6")).text()))+(parseInt(($("#num7")).text()))+(parseInt(($("#num8")).text())));
};
var chkbasicindivid=document.getElementById(“个人价格检查”);
var chkbasicspecial=document.getElementById(“特殊价格检查”);
var chkbasicinclude=document.getElementById(“包括价格检查”);
var chkbasicffamily=document.getElementById(“系列价格检查”);
var chkpolicy=document.getElementById(“策略检查”);
var chkfromir=document.getElementById(“fromair检查”);
var chktoair=document.getElementById(“toair检查”);
var chkhdl=document.getElementById(“hdl检查”);
函数senddetail(){
如果((chkbasicspecial.checked)&(chkpolicy.checked)&(chkfromair.checked)&(chktoair.checked)&(chkhdl.checked)){
var totalprice=0;
警报(parseInt($(“#num3”)).text())+(parseInt($(“#num5”).text())+(parseInt($(“#num6”).text())+(parseInt($(“#num7”).text())+(parseInt($((“#num8”).text()))+(parseInt($(($(“#num8”)).text())));
};
我需要一个好方法来获得好的解决方案。向所有这些元素添加公共处理程序,例如类(单选按钮和复选框)。将单击事件添加到公共类处理程序,并在每次单击时(选中/取消选中)事件添加总成本/删除成本。在计算总成本之前,为什么要检查是否选中了所有复选框?这似乎不符合目的。@ganesh我用id为每一个执行另一个操作,与其他操作不同您可以使用类而不是id,如果可能,还可以尝试将价格标签作为数据价格属性添加到复选框/无线电元素中所以当你点击它时,你可以从属性中得到值。@ganesh谢谢,你能给我一个简单的例子吗