gpt4 book ai didi

javascript - 离线 Javascript Ran 自动更新计算器和电子表格

转载 作者:行者123 更新时间:2023-12-03 07:04:35 26 4
gpt4 key购买 nike

描述:

我需要制作一个电子表格类型的计算器来跟踪在线游戏(ArcheAge)中的信息。该“电子表格”必须保存信息并以 5 分钟为增量自动更新一组值(最好将其作为文件保存到计算机上。这是我正在开发的一个离线应用程序)。

详细信息:

我被要求协助设置 OpenOffice 电子表格来跟踪和保存信息。大多数数据都是手动输入并保存在他们已经制作的电子表格中,但是他在让一个字段以 5 分钟为增量自动更新时遇到了问题。

我查看了他的内容,并尝试建立一个简单的(劳动力 = 劳动力 + 10 [每 5 分钟])类型的公式,但由于电子表格无法使用循环引用,因此无法将该字段设置为自动-每 5 分钟更新一次。

电子表格有 9 列数据和 24 行组。这些列是 (id)(charName)(labor)(freeLabor)(vocal)(tokens)(timeOnline)(realTime)(subscription),另外他添加了一个单元格来保存日期和另一个单元格来保存时间(均来自系统)时钟 - Date() 和 Now())。

每行是 1 个字符的信息(相当于数据库表)。

他希望每个 Angular 色的(劳动力)值每 5 分钟自动更新为劳动力值(劳动力 = 劳动力 + 10),但这是一个循环引用,电子表格不能执行此功能(至少没有第三方程序或加载项,据我所知)。

因此,我查看了它并尝试找到解决方法。在网上查找了很多帖子并接近找到解决方案,但是没有一个对我们需要做的事情有帮助。因此,我提出为他设置一个 .html 文档以供离线使用,并对其进行编码以使其像电子表格一样工作。代码如下。

需求:编辑:引用下面的更改 3。

我需要尝试找到一种方法将此表单数据保存到主机 PC 上的文件中(离线),这样用户就不必在每次运行表单时手动重新输入所有数据.

注意 - 此部分在该行下方进行了更改。

我需要一个非 PhP(javascript 和 html 或其他方法)解决方案来增加每个字符集的劳动单元的值,使其每 5 分钟增加 10 点。他希望可以在不破坏代码的情况下修改单元格数据(例如 getData,运行代码以递增,并将新值重写到单元格中)。我还想尝试将代码保存到文件中,这样他就不必在每次运行文档时重新输入值。

该解决方案应使用 html 和 javascript 显示表格、电子表格或数据库等数据。如果您有其他解决方案方法,请随时添加您对如何创建此数据表的想法。

编辑 1:我想我应该提到(劳动力)的值不应超过 5,000 并且不能低于 0。 - 于 2016 年 4 月 27 日 01:43 添加

编辑 2:在“需求” block 中添加了对所需内容的更好识别。 - 2016 年 4 月 27 日 01:51 添加

编辑 3:修改了用于人工计算的第一个 Javascript 代码。它现在是 for 循环内的嵌套 if 语句,并且现在可以完美运行。现在我需要的只是一种将表单数据保存到文档中的方法,或者一个单独的文档供程序调用(如果可能的话)。更新了需求部分。 - 2016 年 4 月 27 日 05:52

代码如下:

HTML

<section>
<!-- Used to create time stamp at top of page. -->
<p id="time"></p>

<!-- Name of page. -->
<header style="text-align: center;">ArcheAge Test Calculator</header>
<br />

<!-- The Form shown on the page. -->
<form id-form1" name="testcalc">
<!-- Nested Table in Form.-->
<table>
<tr>
<th>Character Name</th>
<th>Labor</th>
<th>Free Labor</th>
<th>Vocation</th>
<th>Tokens</th>
<th>Time/Online</th>
<th>Subscription</th>
</tr>
<tr>
<td><input type="text" id="name1" value="Solareclipse" name="charname"/></td>
<td><input type="text" id="labor1" value="" name="labor"/></th>
<td><input type="text" id="free1" value="Test data" name="freelabor"/></td>
<td><input type="text" id="vocation1" value="Test data" name="voc"/></td>
<td><input type="text" id="tokens1" value="Test data" name="token"/></td>
<td><input type="text" id="online1" value="Test data" name="online"/></td>
<td><input type="text" id="sub1" value="Test data" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name2" value="Farmergirl" name="charname"/></td>
<td><input type="text" id="labor2"/></td>
<td><input type="text" id="free2" value="" name="freelabor"/></td>
<td><input type="text" id="vocation2" value="" name="voc"/></td>
<td><input type="text" id="tokens2" value="" name="token"/></td>
<td><input type="text" id="online2" value="" name="online"/></td>
<td><input type="text" id="sub2" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name3" value="Peacemaker" name="charname"/></td>
<td><input type="text" id="labor3"/></td>
<td><input type="text" id="free3" value="" name="freelabor"/></td>
<td><input type="text" id="vocation3" value="" name="voc"/></td>
<td><input type="text" id="tokens3" value="" name="token"/></td>
<td><input type="text" id="online3" value="" name="online"/></td>
<td><input type="text" id="sub3" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name4" value="Irene" name="charname"/></td>
<td><input type="text" id="labor4"/></td>
<td><input type="text" id="free4" value="" name="freelabor"/></td>
<td><input type="text" id="vocation4" value="" name="voc"/></td>
<td><input type="text" id="tokens4" value="" name="token"/></td>
<td><input type="text" id="online4" value="" name="online"/></td>
<td><input type="text" id="sub4" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name5" value="Admiral" name="charname"/></td>
<td><input type="text" id="labor5"/></td>
<td><input type="text" id="free5" value="" name="freelabor"/></td>
<td><input type="text" id="vocation5" value="" name="voc"/></td>
<td><input type="text" id="tokens5" value="" name="token"/></td>
<td><input type="text" id="online5" value="" name="online"/></td>
<td><input type="text" id="sub5" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name6" value="Huffer" name="charname"/></td>
<td><input type="text" id="labor6"/></td>
<td><input type="text" id="free6" value="" name="freelabor"/></td>
<td><input type="text" id="vocation6" value="" name="voc"/></td>
<td><input type="text" id="tokens6" value="" name="token"/></td>
<td><input type="text" id="online6" value="" name="online"/></td>
<td><input type="text" id="sub6" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name7" value="Sisco" name="charname"/></td>
<td><input type="text" id="labor7"/></td>
<td><input type="text" id="free7" value="" name="freelabor"/></td>
<td><input type="text" id="vocation7" value="" name="voc"/></td>
<td><input type="text" id="tokens7" value="" name="token"/></td>
<td><input type="text" id="online7" value="" name="online"/></td>
<td><input type="text" id="sub7" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name8" value="Martha" name="charname"/></td>
<td><input type="text" id="labor8"/></td>
<td><input type="text" id="free8" value="" name="freelabor"/></td>
<td><input type="text" id="vocation8" value="" name="voc"/></td>
<td><input type="text" id="tokens8" value="" name="token"/></td>
<td><input type="text" id="online8" value="" name="online"/></td>
<td><input type="text" id="sub8" value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name9" value="Octavia" name="charname"/></td>
<td><input type="text" id="labor9"/></td>
<td><input type="text" id="free9" value="" name="freelabor"/></td>
<td><input type="text" id="vocation9"value="" name="voc"/></td>
<td><input type="text" id="tokens9"value="" name="token"/></td>
<td><input type="text" id="online9"value="" name="online"/></td>
<td><input type="text" id="sub9"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name10" value="Samantha" name="charname"/></td>
<td><input type="text" id="labor10"/></td>
<td><input type="text" id="free10"value="" name="freelabor"/></td>
<td><input type="text" id="vocation10"value="" name="voc"/></td>
<td><input type="text" id="tokens10"value="" name="token"/></td>
<td><input type="text" id="online10"value="" name="online"/></td>
<td><input type="text" id="sub10"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name11" value="Joker" name="charname"/></td>
<td><input type="text" id="labor11"/></td>
<td><input type="text" id="free11"value="" name="freelabor"/></td>
<td><input type="text" id="vocation11"value="" name="voc"/></td>
<td><input type="text" id="tokens11"value="" name="token"/></td>
<td><input type="text" id="online11"value="" name="online"/></td>
<td><input type="text" id="sub11"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name12" value="GoodKush" name="charname"/></td>
<td><input type="text" id="labor12"/></td>
<td><input type="text" id="free12"value="" name="freelabor"/></td>
<td><input type="text" id="vocation12"value="" name="voc"/></td>
<td><input type="text" id="tokens12"value="" name="token"/></td>
<td><input type="text" id="online12"value="" name="online"/></td>
<td><input type="text" id="sub12"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name13" value="Minerguy" name="charname"/></td>
<td><input type="text" id="labor13"/></td>
<td><input type="text" id="free13"value="" name="freelabor"/></td>
<td><input type="text" id="vocation13"value="" name="voc"/></td>
<td><input type="text" id="tokens13"value="" name="token"/></td>
<td><input type="text" id="online13"value="" name="online"/></td>
<td><input type="text" id="sub13"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name14" value="Lunareclipse" name="charname"/></td>
<td><input type="text" id="labor14"/></td>
<td><input type="text" id="free14"value="" name="freelabor"/></td>
<td><input type="text" id="vocation14"value="" name="voc"/></td>
<td><input type="text" id="tokens14"value="" name="token"/></td>
<td><input type="text" id="online14"value="" name="online"/></td>
<td><input type="text" id="sub14"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name15" value="Peacemaker" name="charname"/></td>
<td><input type="text" id="labor15"/></td>
<td><input type="text" id="free15"value="" name="freelabor"/></td>
<td><input type="text" id="vocation15"value="" name="voc"/></td>
<td><input type="text" id="tokens15"value="" name="token"/></td>
<td><input type="text" id="online15"value="" name="online"/></td>
<td><input type="text" id="sub15"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name16" value="Minergirl" name="charname"/></td>
<td><input type="text" id="labor16"/></td>
<td><input type="text" id="free16"value="" name="freelabor"/></td>
<td><input type="text" id="vocation16"value="" name="voc"/></td>
<td><input type="text" id="tokens16"value="" name="token"/></td>
<td><input type="text" id="online16"value="" name="online"/></td>
<td><input type="text" id="sub16"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name17" value="Commander" name="charname"/></td>
<td><input type="text" id="labor17"/></td>
<td><input type="text" id="free17"value="" name="freelabor"/></td>
<td><input type="text" id="vocation17"value="" name="voc"/></td>
<td><input type="text" id="tokens17"value="" name="token"/></td>
<td><input type="text" id="online17"value="" name="online"/></td>
<td><input type="text" id="sub17"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name18" value="Minerguyy" name="charname"/></td>
<td><input type="text" id="labor18"/></td>
<td><input type="text" id="free18"value="" name="freelabor"/></td>
<td><input type="text" id="vocation18"value="" name="voc"/></td>
<td><input type="text" id="tokens18"value="" name="token"/></td>
<td><input type="text" id="online18"value="" name="online"/></td>
<td><input type="text" id="sub18"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name19" value="Odoo" name="charname"/></td>
<td><input type="text" id="labor19"/></td>
<td><input type="text" id="free19"value="" name="freelabor"/></td>
<td><input type="text" id="vocation19"value="" name="voc"/></td>
<td><input type="text" id="tokens19"value="" name="token"/></td>
<td><input type="text" id="online19"value="" name="online"/></td>
<td><input type="text" id="sub19"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name20" value="Pheobe" name="charname"/></td>
<td><input type="text" id="labor20"/></td>
<td><input type="text" id="free20"value="" name="freelabor"/></td>
<td><input type="text" id="vocation20"value="" name="voc"/></td>
<td><input type="text" id="tokens20"value="" name="token"/></td>
<td><input type="text" id="online20"value="" name="online"/></td>
<td><input type="text" id="sub20"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name21" value="Spacewalker" name="charname"/></td>
<td><input type="text" id="labor21"/></td>
<td><input type="text" id="free21"value="" name="freelabor"/></td>
<td><input type="text" id="vocation21"value="" name="voc"/></td>
<td><input type="text" id="tokens21"value="" name="token"/></td>
<td><input type="text" id="online21"value="" name="online"/></td>
<td><input type="text" id="sub21"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name22" value="Drunkflowers" name="charname"/></td>
<td><input type="text" id="labor22"/></td>
<td><input type="text" id="free22"value="" name="freelabor"/></td>
<td><input type="text" id="vocation22"value="" name="voc"/></td>
<td><input type="text" id="tokens22"value="" name="token"/></td>
<td><input type="text" id="online22"value="" name="online"/></td>
<td><input type="text" id="sub22"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name23" value="Joker" name="charname"/></td>
<td><input type="text" id="labor23"/></td>
<td><input type="text" id="free23"value="" name="freelabor"/></td>
<td><input type="text" id="vocation23"value="" name="voc"/></td>
<td><input type="text" id="tokens23"value="" name="token"/></td>
<td><input type="text" id="online23"value="" name="online"/></td>
<td><input type="text" id="sub23"value="" name="sub"/></td>
</tr>
<tr>
<td><input type="text" id="name24" value="Badkush" name="charname"/></td>
<td><input type="text" id="labor24"/></td>
<td><input type="text" id="free24"value="" name="freelabor"/></td>
<td><input type="text" id="vocation24"value="" name="voc"/></td>
<td><input type="text" id="tokens24"value="" name="token"/></td>
<td><input type="text" id="online24"value="" name="online"/></td>
<td><input type="text" id="sub24"value="" name="sub"/></td>
</tr>
</table><!-- End Table -->
</form><!-- End Form -->

JavaScript

<!-- Script to run Labor calculations. -->
<script type="text/javascript">

function increment(){
for(var i=1; i<=24; i++){
var id = "labor"+i;
var points = document.getElementById(id).value;
if(points>=4990){
document.getElementById(id).value=5000;
}
else{
document.getElementById(id).value=Number(document.getElementById(id).value)+10;
}
}
}
increment()
</script>

<!-- Script to run Time Stamp at top of page. -->
<script type="text/javascript">
var date = new Date();
var n = date.toDateString();
var time = date.toLocaleTimeString();

document.getElementById('time').innerHTML = n + ' ' + time;
</script>

最佳答案

您还没有真正说出您的问题是什么,所以我将向您介绍 for 循环的魔力。

与其将同一行写 24 次,不如将这段代码写一次!

for(var i=1; i<=24; i++){
var id = "labor" + i;
var n = Number(document.getElementById(id).innerHTML);
n += 10;
document.getElementById(id).innerHTML = n;
}

说明:

for 循环在开头创建一个变量 i,并将其设置为 1。对于第一个循环,我们需要文本“labor1”,因此创建另一个变量 id,它是“劳动”无论我是什么(现在,1)。

然后执行您的 document.getElementById("labor1").value 操作,但由于变量 id 已经是“labor1”,我们可以在循环中替换它。 += 10 位只是“将此值加 10”的简写。

然后,for 循环检查 i 是否小于 24(确实如此),并且 i++ 位将 i 加 1(所以现在是 2)。然后循环重复相同的代码 23 次,直到 i > 24。

如果您足够聪明,您也可以以编程方式创建该页面,因为看起来您的许多元素都在那里重复。

关于javascript - 离线 Javascript Ran 自动更新计算器和电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36881141/

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