首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >屏幕上从select /无线电台进行计算的Javascript

屏幕上从select /无线电台进行计算的Javascript
EN

Stack Overflow用户
提问于 2014-11-18 17:01:02
回答 2查看 131关注 0票数 0

目前,我正在一个预订网站上工作,我已经实现了选择框和单选按钮,以使用户能够选择他们的党大小,如果他们想要贵宾座位。我也实施了基于这两种选择的价格因素。

一旦用户按下submit按钮,我就启用了php来执行计算,但是我更希望这些计算也能在屏幕上自动执行,只要用户做出选择,就使用javascript。

以下是政党规模选择的html代码:

代码语言:javascript
运行
复制
<select name="party" value="<?php echo $party;?>">
<option value="">Please Select</option>
<option <?php if (isset($party) && $party=="5") echo "selected";?> value="5">1 Person (£5)</option>
<option <?php if (isset($party) && $party=="10") echo "selected";?> value="10">2 People (£10)</option>
<option <?php if (isset($party) && $party=="15") echo "selected";?> value="15">3 People (£15)</option>
<option <?php if (isset($party) && $party=="20") echo "selected";?> value="20">4 People (£20)</option>
<option <?php if (isset($party) && $party=="25") echo "selected";?> value="25">5 People (£25)</option>
<option <?php if (isset($party) && $party=="30") echo "selected";?> value="30">6 People (£30)</option>
<option <?php if (isset($party) && $party=="35") echo "selected";?> value="35">7 People (£35)</option>
<option <?php if (isset($party) && $party=="40") echo "selected";?> value="40">8 People (£40)</option>
<option <?php if (isset($party) && $party=="45") echo "selected";?> value="45">9 People (£45)</option>
<option <?php if (isset($party) && $party=="50") echo "selected";?> value="50">10+ People (£50)</option>
</select>
<span id="party" class="error"><?php echo $partyErr;?></span>

以下是VIP选择的html代码:

代码语言:javascript
运行
复制
<strong> VIP area* : </strong> <br><br>
Yes (+£5) <input type="radio" name="vip" <?php if (isset($vip) && $vip=="Yes") echo "checked";?> value="Yes">
<br><span id="vip" class="error"><?php echo $vipErr;?></span><br>
No <input type="radio" name="vip" <?php if (isset($vip) && $vip=="No") echo "checked";?> value="No">

下面是我想要显示的总价:

代码语言:javascript
运行
复制
<strong>Total booking cost based on party size & VIP selection: £<span id="price">0</span></strong>

以下是我到目前为止拥有的javascript:

代码语言:javascript
运行
复制
 $(document).ready(function(){ 
    $(document).on('change', '#party', function(e) {
         $('#price').html(parseInt($(this).val()) + parseInt($('input[name="vip"]').val()));
    });

     $(document).on('click', 'input[name="vip"]', function(e) {
         $('#price').html(parseInt($('#party').val()) + parseInt($(this).val()));
    });
});

目前,每个价格的总和还没有计算出来。当用户单击派对大小时,总成本显示为空白,如果用户选择坐在VIP区域,也不会进行任何更改。在我的编码中可能有一个简单的错误,所以如果有人知道我如何修复它以使它正常工作,请帮助。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-18 17:23:48

您选择的是span元素,而不是select。要纠正这一点,您可以将"on“语句更改如下:

代码语言:javascript
运行
复制
$("select[name=party]").on("change", function() {
    //your handler code
});
票数 0
EN

Stack Overflow用户

发布于 2014-11-18 17:16:54

您使用的选择器是错误的,因为"party“是select的名称,而不是ID。

代码语言:javascript
运行
复制
$(document).on('change', '#party', function(e) {

将select元素更改为

代码语言:javascript
运行
复制
<select id="party" value="<?php echo $party;?>">

然后把你下面跨度的id改为其他的东西。

同样的事情也适用于你的VIP输入。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26999796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档