【发布时间】:2016-06-20 16:31:07
【问题描述】:
我有一个选择标签,其中的选项需要像这样分配两个值。
<select id="industry_churn" class="form-control">
<option value="0">Select a Value</option>
<option value="{.70, .05}">Salon/Barber</option>
<option value="{.95, .05}">Painting</option>
</select>
在 JavaScript 方面,我有以下函数可以进行多次计算:
function calculateAll() {
var averageJobs = +document.getElementById("averageJobs").value;
var jobValue = +document.getElementById("jobValue").value;
var yearsOpen = +document.getElementById("yearsOpen").value;
var industry_churn = +document.getElementById("industry_churn").value; /* array item 1 */
var recovery = +document.getElementById("industry_churn").value; /* array item 2 */
var inactive = (averageJobs * 50) * yearsOpen * industry_churn; /* Value 1 */
var missedRevenue = inactive * jobValue;
var jobsRecovered = (averageJobs * 50) * recovery * yearsOpen; /* Value 2 */
var revenueYear = jobsRecovered * jobValue;
document.getElementById("inactive").value = inactive;
document.getElementById("missedRevenue").value = missedRevenue;
document.getElementById("jobsRecovered").value = jobsRecovered;
document.getElementById("revenueYear").value = revenueYear;
}
变量missedRevenue需要从option标签中拉取item 1(industry_churn),变量jobsRecovered需要拉取item 2(恢复) 来自选项标签。
如何让我的 JavaScript 从数组中提取值?
【问题讨论】:
-
您可以在任何元素上多次拥有相同的属性。您可能想改用自定义数据属性(例如
data-val1 data-val2)。见developer.mozilla.org/en-US/docs/Web/Guide/HTML/… -
只需用对象创建一个数组,val1/val2 是这些对象的属性:)
-
你不能有重复的属性。
-
一种选择是将值存储到逗号分隔的字符串中,然后将它们拆分为 JS 中的数组......或者只是将值存储为 JSON(如
value="[0.7, 0.05]"),然后解析这些 JSON 字符串到数组。
标签: javascript html arrays forms