gpt4 book ai didi

javascript - 将选项选择中的两个值传递给 javascript 函数

转载 作者:行者123 更新时间:2023-12-02 06:19:57 25 4
gpt4 key购买 nike

我有一个工作税计算器,我需要再添加一个。对于输入 C,我需要有两个与用户选择的城镇关联的已知值。然后,我需要将这些值插入到不同位置的 Calculate 函数中,但在 Calculate2 的一个位置中只插入其中一个值。像这样的东西:

<select name="input_C" id="input_C">
<option value="value1,value2">Acworth</option>
</select>

function Calculate(Atext, Btext, Ctext_value1, Ctext_value2, form)
{
var A = parseFloat(Atext);
var B = parseFloat(Btext);
var C_1 = parseFloat(Ctext_value1);
var C_2 = parseFloat(Ctext_value2);
form.Answer.value = ((B/C_1)-A)*C_2;
}

function Calculate2(Atext, Ctext_value2, Dtext, form)
{
var A = parseFloat(Atext);
var C_2 = parseFloat(Ctext_value2);
var D = parseFloat(Dtext);
form.Answer.value = D-((A*C_2)/1000);
}

但我不知道如何传递这两个值并正确关联它们?

下面的代码有效,但显然缺少与 input_C 关联的两个值。我确定我需要向 document.getElementById("input_C").value 添加其他内容,除了其他更改...

function compute() {
var A = document.getElementById("input_A").value;
var B = document.getElementById("input_B").value;
var C = document.getElementById("input_C").value;
var D = document.getElementById("input_D").value;

if (B != "" && D != "") {
alert("You may only enter either an Assessment or Annual Taxes.");
} else if (A =="" && B =="" && D =="") {
alert("You must select your town, enter a Market Value, and either an Assessment or Annual Taxes to calcuate..");
} else if (C =="999") {
alert("You must select your town.");
} else if (A =="") {
alert("You must enter a Market Value.");
} else if (B != "" && C !="") {
Calculate(A, B, C, document.getElementById("overtax"));
} else if (D != "" && C !="") {
Calculate2(A, C, D, document.getElementById("overtax"));
} else {
alert("You must select your town, enter a Market Value, and either an Assessment or Annual Taxes to calcuate.");
}
}

function Calculate(Atext, Btext, Ctext, form)
{
var A = parseFloat(Atext);
var B = parseFloat(Btext);
var C = parseFloat(Ctext);
form.Answer.value = ((B-A)*C)/1000;
}

function Calculate2(Atext, Ctext, Dtext, form)
{
var A = parseFloat(Atext);
var C = parseFloat(Ctext);
var D = parseFloat(Dtext);
form.Answer.value = D-((A*C)/1000);
}


<FORM NAME="Calculator" METHOD="post" id="overtax">
<P>City/Town:
<select name="input_C" id="input_C">
<option value="999">Select Your City/Town</option>
<option value="20.55">Acworth</option>
</select>
</P>
<P>Market Value: <INPUT TYPE=TEXT NAME="input_A" id="input_A" SIZE=10 onblur="this.value=this.value.replace(/,/g,'')"> <span class="directions">Please enter what you believe your property is worth in today's market</span></P>
<P>Assessment: <INPUT TYPE=TEXT NAME="input_B" id="input_B" SIZE=10 onblur="this.value=this.value.replace(/,/g,'')"> <span class="directions">Located on your property tax bill or assessment card</span></P>
<P>OR</P>
<P>Annual Taxes: <INPUT TYPE=TEXT NAME="input_D" id="input_D" SIZE=10 onblur="this.value=this.value.replace(/,/g,'')"> <span class="directions">Located on your property tax bill or assessment card</span></P>

<P><INPUT TYPE="button" VALUE="Calculate" name="AddButton" onclick="compute();" /></P>

最佳答案

如果我理解正确,你只需要拆分值 String

例如给出这个 HTML

<select id="mySelect">
<option value="100,200">My Value</option>
</select>​

然后这会给你值

var value = document.getElementById("mySelect").value;
var split = value.split(",");
var v1 = split[0];
var v2 = split[1];

例如参见 jsfiddle

关于 split 方法的更多信息 here

关于javascript - 将选项选择中的两个值传递给 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12831324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com