我有一个JS数组,它应该只显示一个元素。但确实如此,它的索引是1而不是0,计数是2.此外,数组不显示0索引。
我的代码:
var _UnitOfMeasureRelatedUnitData = [];
var rows = $('#jqxUOMRelatedUnitsDropdownGrid').jqxGrid('getrows');
var RecordCount = 0;
if (rows.length !== 1 && rows[0]["UOMRelatedUnit_Name"] !== ""){
for(var i = 0; i < rows.length; i++){
var row = rows[i];
var _row = {};
if(row.UOMRelatedUnit_AddItem !== F) {
RecordCount += 1;
_row["Name"] = $("#txtUnitOfMeasureSetName").val();
_row["Active"] = T;
_row["UnitOfMeasureTypeID"] = $("input[type='radio'][id='rblUnitOfMeasureType']:checked").val();
_row["BaseUnitID"] = $("input[type='radio'][id='rblUnitOfMeasureBaseUnit']:checked").val();
_row["RelatedUnitDisplayOrder"] = RecordCount;
_row["RelatedUnitName"] = row.UOMRelatedUnit_Name;
_row["RelatedUnitAbbreviation"] = row.UOMRelatedUnit_Abbreviation;
_row["RelatedUnitConversionRatio"] = row.UOMRelatedUnit_ConversionOfBaseUnits;
_row["UnitOfMeasureSetID"] = UnitOfMeasureSetID;
_UnitOfMeasureRelatedUnitData[i] = _row;
}
}
....
}
在我的JQx网格中,我至少有四种选择。对于这个问题,我只在网格中选择了2个选项,其AddItem
值为True,其他一切都为False。
我需要改变我的逻辑,因为我现在还看不到它?
编辑1
我忽略了RecordCount += 1;
的位置,我会尝试将其移至作业的末尾,看看会发生什么。
编辑2
这个位置没有区别。
答案 0 :(得分:1)
维护另一个变量以便像这样索引数据
var index=0; // place this outside of for loop
_UnitOfMeasureRelatedUnitData[index++] = _row;
你不需要RecordCount += 1;
。
您可以使用_UnitOfMeasureRelatedUnitData.length