2016-05-19 6 views
-2

Если мне нужно увидеть, что мой выход помещен на страницу не в console.log, я хочу, чтобы документ использовал Element By Id, как я могу это сделать? он дал мне только один результат, только Стив!Элемент документа javascript по id

[Код:] http://i.stack.imgur.com/ISqzT.png

<script> 
 
    var friends = {}; 
 
    friends.bill = { 
 
     firstName: "Bill", 
 
     lastName: "Gates", 
 
     number: "(206) 555-5555", 
 
     address: ['Microsoft Way'] 
 
     }; 
 
    friends.steve = { 
 
     firstName: "Steve", 
 
     lastName: "Jobes", 
 
     number: "(444) 111 000", 
 
     address: ["Apple way"] 
 
    }; 
 
    var list = function(obj) { 
 
     for(var key in obj){ 
 
     console.log(obj); 
 
     document.getElementById("demo").innerHTML = key + "<br>"; 
 
     } 
 
    } 
 

 
    var search = function(name) { 
 
     for(var key in friends){ 
 
     if(name === friends[key].firstName){ 
 
      console.log(friends[key]); 
 
     } 
 
     } 
 
    } 
 
    list(friends); 
 
    // search("Steve"); 
 
    </script>

+1

Вы держите перезапись содержимого, что вы ожидали? –

+0

Какой выход? Куда вы хотите направлять вывод? –

+0

Пройдите код в отладчике и посмотрите, что происходит с 'document.getElementById (« demo »). InnerHTML' каждый раз, когда цикл выполняется. – David

ответ

1

Эй единственное изменение, которое вы должны сделать это с помощью + = вместо того, чтобы просто = для функции innerHTML. Здесь вы найдете:

text.innerHTML + = friend + "
";

+0

Спасибо paulg :) –

+0

в том же примере, если я так делаю? var search = function (name) { for (var key in friends) { if (name === friends [key] .firstName) { console.log (friends [key]); document.getElementById ('поиск'). InnerHTML + = friends [key] + "
"; } } } вывод будет [объект Object] как я могу это исправить ?? –

0

Просто добавьте результат вашего innerHTML, не перезаписать, также: document.getElementById("demo").innerHTML += key + "<br>";

+0

Pedro Gonçalves не работает Можете ли вы дать мне код? –

Смежные вопросы