查看: 1277|回复: 20
|
[问题解决了] 又是javascript的问题(算数)
[复制链接]
|
|
现在我拥有七个SELECT BOX,价钱都是不一样,客户可以任何选择想购买的票,选择完后,会显示总共是多少,用javascript来计算是怎样的?
如果他选择是一张票的价格是RM100,他购买十张:
doc.ticket.price.value = ticket.value * 100;
可是如果客户选择不同价格的票,要怎样计算呢?
[ 本帖最后由 sotsot82 于 16-11-2006 02:16 PM 编辑 ] |
|
|
|
|
|
|
|
发表于 15-11-2006 06:02 PM
|
显示全部楼层
原帖由 sotsot82 于 15-11-2006 05:03 PM 发表
现在我拥有七个SELECT BOX,价钱都是不一样,客户可以任何选择想购买的票,选择完后,会显示总共是多少,用javascript来计算是怎样的?
如果他选择是一张票的价格是RM100,他购买十张:
doc.ticket.pr ...
select是multi select? |
|
|
|
|
|
|
|

楼主 |
发表于 15-11-2006 06:09 PM
|
显示全部楼层
原帖由 hui_wooi 于 15-11-2006 06:02 PM 发表
select是multi select?
RM100
<select size="1" name="ticket0" onchange="show_price(this)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select张<br><br>
RM150
<select size="1" name="ticket1" onchange="show_price(this)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select张<br><br>
RM200
<select size="1" name="ticket2" onchange="show_price(this)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select张<br><br>
......
......
..........就是这样 |
|
|
|
|
|
|
|
发表于 15-11-2006 07:55 PM
|
显示全部楼层
原帖由 sotsot82 于 15-11-2006 06:09 PM 发表
RM100
<select size="1" name="ticket0" onchange="show_price(this)">
<option value="1">1</option>
<option value="2"> ...
多一个textbox来收总数。
每次call show_price function时,也把总数带进去加。 |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 08:32 AM
|
显示全部楼层
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 09:33 AM
|
显示全部楼层
那我不是要拥有七个FUNCTION?
function price(ticket)
{
document.mrd.price.value = ticket.value * 100;
}
function price1(ticket1)
{
document.mrd.price.value = ticket1.value * 150;
}
..............
..............
............. |
|
|
|
|
|
|
|
发表于 16-11-2006 09:43 AM
|
显示全部楼层
原帖由 sotsot82 于 16-11-2006 09:33 AM 发表
那我不是要拥有七个FUNCTION?
function price(ticket)
{
document.mrd.price.value = ticket.value * 100;
}
function price1(ticket1)
{
document.mrd.price.value = ticket1.value * 150;
...
你到底是用onChange还是只是最后一个submit来call function? |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 09:47 AM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 16-11-2006 10:11 AM
|
显示全部楼层
一个 function 就好... 只是 select 的名字要改改:
<script language="javascript">
function CalTotal () {
var total = 0, price = 0;
for (var x = 0; x < document.forms[0].elements.length; x++) {
if (document.forms[0].elements[x].name.indexOf ("ticket_") == 0) {
price = parseInt(document.forms[0].elements[x].name.substr(document.forms[0].elements[x].name.indexOf ("_") + 1, document.forms[0].elements.length));
total += price * parseInt(document.forms[0].elements[x][document.forms[0].elements[x].selectedIndex].value);
}
}
document.forms[0].total.value = total;
}
</script>
<form>
RM100
<select size="1" name="ticket_100" onchange="CalTotal();">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select><br><br>
RM150
<select size="1" name="ticket_150" onchange="CalTotal();">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select><br><br>
<input type="text" name="total" value="0">
</form> |
|
|
|
|
|
|
|
发表于 16-11-2006 10:14 AM
|
显示全部楼层
原帖由 goatstudio 于 16-11-2006 10:11 AM 发表
一个 function 就好... 只是 select 的名字要改改:
<script language="javascript">
function CalTotal () {
var total = 0, price = 0;
for (var x = 0; x < docum ...
羊大大,你真内行。 |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 10:19 AM
|
显示全部楼层
原帖由 goatstudio 于 16-11-2006 10:11 AM 发表
一个 function 就好... 只是 select 的名字要改改:
<script language="javascript">
function CalTotal () {
var total = 0, price = 0;
for (var x = 0; x < docum ...
哇!好复杂,要研究看看了,如果购买完后又要附加费,拥有两个选择一个是RM4,另外一个是RM8,用户一定要选择的。 |
|
|
|
|
|
|
|
发表于 16-11-2006 10:24 AM
|
显示全部楼层
原帖由 sotsot82 于 16-11-2006 10:19 AM 发表
哇!好复杂,要研究看看了,如果购买完后又要附加费,拥有两个选择一个是RM4,另外一个是RM8,用户一定要选择的。
同一页?还是不同页? |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 10:25 AM
|
显示全部楼层
原帖由 hui_wooi 于 16-11-2006 10:24 AM 发表
同一页?还是不同页?
同一页 |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 10:29 AM
|
显示全部楼层
我的表格是这样的,客户选择购买多少张不同价钱的票后,然后加上邮寄费用,西马与东马的价钱不一样,然后总共是多少。 |
|
|
|
|
|
|
|
发表于 16-11-2006 10:52 AM
|
显示全部楼层
原帖由 sotsot82 于 16-11-2006 10:29 AM 发表
我的表格是这样的,客户选择购买多少张不同价钱的票后,然后加上邮寄费用,西马与东马的价钱不一样,然后总共是多少。
稍微修改羊大大的code即可。想提醒你的是不要只是用javascript计算,很危险的。
<html>
<head>
<script type="text/javascript">
function CalTotal ()
{
var total = 0, price = 0;
for (var x = 0; x < document.forms[0].elements.length; x++)
{
if (document.forms[0].elements[x].name.indexOf ("ticket_") == 0)
{
price = parseInt(document.forms[0].elements[x].name.substr(document.forms[0].elements[x].name.indexOf ("_") + 1, document.forms[0].elements.length));
total += price * parseInt(document.forms[0].elements[x][document.forms[0].elements[x].selectedIndex].value);
}
}
document.forms[0].total.value = total;
}
</script>
</head>
<body>
<form>
Select numbers:<br />
<select name="ticket_100" onchange="CalTotal()">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
</select>
<select name="ticket_150" onchange="CalTotal()">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
</select>
<select name="ticket_1" onchange="CalTotal()">
<option value="4">West</option>
<option value="8">East</option>
</select>
<input type="text" name="total" value="0">
</form>
</body>
</html> |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 10:55 AM
|
显示全部楼层
原帖由 hui_wooi 于 16-11-2006 10:52 AM 发表
稍微修改羊大大的code即可。想提醒你的是不要只是用javascript计算,很危险的。
<html>
<head>
<script type="text/javascript">
function CalTotal ()
{
var total = 0, ...
我的邮寄费用是用checkbox的.... |
|
|
|
|
|
|
|
发表于 16-11-2006 11:00 AM
|
显示全部楼层
原帖由 sotsot82 于 16-11-2006 10:55 AM 发表
我的邮寄费用是用checkbox的....
用radio button会比较适合吧。 |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 01:57 PM
|
显示全部楼层
原帖由 hui_wooi 于 16-11-2006 11:00 AM 发表
用radio button会比较适合吧。
然后怎样计算? |
|
|
|
|
|
|
|

楼主 |
发表于 16-11-2006 02:15 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 17-11-2006 09:49 AM
|
显示全部楼层
原帖由 hui_wooi 于 16-11-2006 10:14 AM 发表
羊大大,你真内行。
混口饭吃... 大家一起学习.  |
|
|
|
|
|
|
| |
本周最热论坛帖子
|