如何使用纯JavaScript更新所有子ID

时间:2019-07-18 12:48:29

标签: javascript html

我有一个名为resetIndex的JavaScript函数。它工作正常,但我想重置所有子ID。我怎样才能做到这一点?有没有像firstChildlastChild这样的方法?

我是JavaScript新手。有人可以帮忙吗?

我具有以下功能:

function resetIndex(delId) {
  for (var i = delId + 1; i < count; i++) {
    var currentElement = document.getElementById(i);
    currentElement.id = i - 1;
    var update = currentElement.childNodes;
    update.setAttribute('id', 'deleteLink(' + currentElement.id + ')');
  }
  count--;
}

1 个答案:

答案 0 :(得分:1)

您可以使用

DocumentReference docRef = db.collection("cities").document("SF"); docRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() { @Override public void onComplete(@NonNull Task<DocumentSnapshot> task) { if (task.isSuccessful()) { DocumentSnapshot document = task.getResult(); if (document.exists()) { Map<String, Object> map = document.getData(); //this throws exception Map<String, CustomPojo> myCustomMap = (Map<String, CustomPojo>) map ; //even this throws exception for (Map.Entry<String, Object> entry : map.entrySet()) { Object obj = entry.getValue(); CustomPojo myObj= (CustomPojo) obj; } //working darty solution for (Map.Entry<String, Object> entry : map.entrySet()) { String json = new Gson().toJson(entry.getValue()); CustomPojo myObj= new Gson().fromJson(json, CustomPojo.class); } } else { Log.d(TAG, "No such document"); } } else { Log.d(TAG, "get failed with ", task.getException()); } } });

获得第一个,并且

node.children[0]

获得最后一个。

请务必先检查它们是否存在。

要对所有子节点执行操作,可以使用for循环,例如

node.children[node.children.length - 1]