gpt4 book ai didi

javascript - 加快从大量文本框中获取值并将其存储到数组中的速度

转载 作者:行者123 更新时间:2023-12-02 18:51:10 24 4
gpt4 key购买 nike

我正在编写一个网页,其中包含大量填充在服务器端的文本框。在页面加载时,我需要从文本框中获取所有值并将它们存储在数组中。目前我正在这样做:

文本框列表:

<input name="hdnID" type="hidden">256<input>
<input name="hdnCode" type="hidden">XXXXX<input>
<input name="hdnName" type="hidden">Name 1<input>
<input name="hdnID" type="hidden">257<input>
<input name="hdnCode" type="hidden">XXXXY<input>
<input name="hdnName" type="hidden">Name 2<input>
...

JavaScript/Jquery:

  var count = $('[name=hdnCode]').length;
var arrItems = new Array();

for (i=0; i < count; i++)
{
var joItem = {
"itemID" : $('[name=hdnID]')[i].value,
"itemCode" : $('[name=hdnCode]')[i].value,
"itemName" : $('[name=hdnName]')[i].value
};

arrItems[i] = joItem;
}

目前我的页面上有 1045 个项目,导致 3135 个文本框!在 IE8 上,我收到一个弹出窗口,显示“停止运行此脚本?页面上的脚本导致 Internet Explorer 运行缓慢......”。有人能想出一种方法来加快速度或提高效率,以便 IE 8 可以正常处理吗?

最佳答案

属性选择器通常效率不高,因此请尝试其他方式来选择所需的输入(例如特定父项下的所有输入)。

此外,您没有缓存选择的结果,因此它必须一遍又一遍地执行此操作。

 var hdnIDs =  $('[name=hdnID]');
var hdnCodes = $('[name=hdnCode]');
var hdnNames = $('[name=hdnName]');
var count = hdnCodes.length;
for (i=0; i < count; i++)
{
var joItem = {
"itemID" : hdnIDs[i].value,
"itemCode" : hdnCodes[i].value,
"itemName" : hdnNames[i].value
};

arrItems[i] = joItem;
}

应该更有效率。

关于javascript - 加快从大量文本框中获取值并将其存储到数组中的速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15805486/

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