1

大家好,

今天我正在开发一个 JavaScript 报价系统,

JS如下

 <script type="text/javascript">
 <!-- Hide this code from non-JavaScript browsers
 function TotalIt() {
 CostPerStairs=25;
 CostPerHall=50;
 CostPerSingle=35;
 CostPerDouble=50;

 f1=document.forms[0]; // abbreviation

 RI=f1.SelR.selectedIndex;
 RV=RI*CostPerStairs;
 HI=f1.SelH.selectedIndex;
 HV=HI*CostPerHall;
 SI=f1.SelS.selectedIndex;
 SV=SI*CostPerSingle;
 CI=f1.SelC.selectedIndex;
 CV=CI*CostPerDouble;
 TV=RV*1+HV*1+SV*1+CV*1;

 RV=Math.round(RV*100)/100;
 HV=Math.round(RV*100)/100;
 SV=Math.round(SV*100)/100;
 CV=Math.round(CV*100)/100;
 TV=Math.round(TV*100)/100;

 f1.TotR.value=RV;
 f1.TotR.value=HV;
 f1.TotS.value=SV;
 f1.TotC.value=CV;
 f1.Total.value=TV;

 return true;
 }
 // End hiding -->
 </script>

HTML 方面在这里   清洁楼梯的房间类型数量 - 0 - 1 2 3 4
大厅 - 0 - 1 2 3 4
单人卧室 - 0 - 1 2 3 主卧室 - 0 - 1 2 3 4 5
 

总计

所以 - 我听到你说 - 问题是什么?

本质上,我想添加的是一个 poscode 下拉框,它启动总价格TV=RV*1+HV*1+SV*1+CV*1 的最小值;

The idea is that when a postcode is selected, the value of TV (total) must be a minimum price or above

我为此输入的 HTML 如下;

<tr>
  <td>Select a Postcode</td>
  <td align="center"><select name="SelP">
    <option>- 0 -</option>
    <option>LS1</option>
    <option>LS2</option>
    <option>LS3</option>
    <option>LS4</option>
  </select>
    <input type="hidden" name="TotR" onFocus="this.blur();" />
    <br></td>
</tr>

但是我不知道如何将它放入 Java,我尝试了几种方法(基本上是反复试验),我认为我可以通过使用一些 if 和 where 子句来使用 PHP 来做到这一点,但是我已经被难住了此处为 JavaScript。

任何建议将不胜感激。

4

1 回答 1

1

你想要Math.max(x, y)。它接受两个值并返回两者中的最大值,从而设置最小值。

var myMinimumValue = f1.SelP.selectedIndex;

// Sets TV to a minimum of selected index of SelP
TV = Math.max(myMinimumValue, TV);

如果SelP包含具有特定值的选项(我猜这是您真正想要的),如下所示:

  <select name="SelP">
    <option value="0">- 0 -</option>
    <option value="200">LS1</option>
    <option value="400">LS2</option>
    <option value="1000">LS3</option>
    <option value="2000">LS4</option>
  </select>

然后你想要类似的东西:

var myMinimumValue = f1.SelP[f1.SelP.selectedIndex].value;

// Sets TV to a minimum of the selected value of SelP
TV = Math.max(myMinimumValue, TV);
于 2012-11-11T12:45:05.227 回答