2015-04-14 5 views
-3

Хэя Stackoverflowers,Значение объекта не определено

у меня есть маленький вопрос ..

у меня есть объект Javascript, где значение undefined когда я консольный его регистрации.

код:

<?php 
    foreach ($rooms as $room) { 
     if(isset($room->room_id) && isset($room->trained)) 
     { 
     echo 'myRooms['.$room->room_id.'] = '. $room->trained.';';  
     ?> 

     <?php 
    }} 
?> 

//console.log(myRooms) 
var newValues = {} 

function changeCheckBox(checkBox) 
{ 
    if(checkBox.checked == true){ 
     newValues[checkBox.name] = 1; 
    } 
    else 
    { 
     newValues[checkBox.name] = 0; 
    } 


} 

function submitAction() 
{ 
    for(var i in myRooms) 
    { 
     console.log(i) 
     console.log(myRooms[i]) 
     console.log(newValues[i]) 
    } 

// console.log(myRooms) 
// console.log(newValues) 

} 

Любая помощь приветствуется, я сейчас обучение Javascript/PHP.

Спасибо заранее, ребята!

+0

Увидев ваш код, кажется, что вы не создали какой-либо переменной в Java-скрипт с именем myRooms –

+1

Было бы полезно, если вы добавили '' ' теги, поэтому было более очевидно, что вы здесь делали – RiggsFolly

+0

'$ rooms' имеет значение, как вы ожидали? Ваш код PHP 'echo' что-то? Каков результат? – Frogmouth

ответ

1

В javascript вы должны объявить переменную перед использованием. Например, вы должны поставить это перед кодом PHP

<script> 
var myRooms = []; 
</script> 
+0

Он пытается сделать это в PHP-коде, если вы снова посмотрите – RiggsFolly

+0

Вероятно, его цикл ничего не печатает – Frogmouth

+0

@RiggsFolly, Он пытается создать новые элементы массива 'myRooms ['. $ Room-> room_id.'] знак равно $ Номер-> обучен. ';' ' Вы можете увидеть больше здесь -> http://www.w3schools.com/js/js_arrays.asp ' var person = []; человек [0] = "Джон"; человек [1] ​​= "Doe"; человек [2] = 46; ' – Kristiyan