我有许多包含文本的元素,我使用这些文本parseInt()
从特定数量的元素(基于当前月份)和特定的选择器通配符中获取值,并将这些值推送到六个数组之一中以供其他地方使用。我正在尝试清理代码并制作一个紧凑的循环来完成所有这些。
如果我使用六个单独的for
循环,我可以让一切正常工作,但我想我可能会尝试看看它是否能够在一个循环中完成。
所以在下面的for
循环中,我试图通过尝试类似的方法使元素 ID 的 jQuery 通配符选择器成为i
(from ) 的当前值,但这似乎不起作用。statusArray
$('[id*=statusArray[i]])
然后我想通过类似的方式将数据推送到预定义的适当数组中,statusArray[i]Array.push(...)
但这也不起作用。我试过连接各种方式,但似乎无法让它发挥作用。
任何帮助,将不胜感激!先感谢您!
HTML:
<div id="jan_connected"></div> <!-- left empty to test for NaN -->
<div id="jan_busy">100</div>
<div id="jan_noanswer">100</div>
<div id="jan_abandoned">100</div>
<div id="feb_minutes">100</div>
<div id="feb_totals_calls_c">100</div>
<div id="feb_connected">100</div>
<div id="feb_busy">100</div>
<div id="feb_noanswer">100</div>
<div id="feb_abandoned">100</div>
Javascript:
var connectedArray = [];
var busyArray = [];
var noanswerArray = [];
var abandonedArray = [];
var minutesArray = [];
var callsArray = [];
// var date = new Date();
// var dateNumber = 1 + date.getMonth();
var dateNumber = 2;
var statusArray = ['minutes', 'total_calls', 'connected', 'busy', 'noanswer', 'abandoned']
for (i=0; i<dateNumber; i++) {
// Below I would like the id* to equal the current value of the statusArray iteration
if (isNaN(parseInt($('[id*=statusArray[i]]').slice(i).html()))) {
statusArray[i]Array.push("0"); // Trying to push into the appropriate array dynamically
} else {
statusArray[i]Array.push(parseInt($('[id*=statusArray[i]]').slice(i).html()));
}
}