var model = {
cats: [
{
clickCount: 0,
name: "Panther",
imgUrl: "images/cat1.png"
},
{
clickCount: 0,
name: "Tiger",
imgUrl: "images/cat2.png"
},
{
clickCount: 0,
name: "Rocky",
imgUrl: "images/cat3.png"
},
{
clickCount: 0,
name: "Marshal",
imgUrl: "images/cat4.png"
},
{
clickCount: 0,
name: "Simpson",
imgUrl: "images/cat5.png"
},
{
clickCount: 0,
name: "Kajol",
imgUrl: "images/cat6.png"
}
]
};
catObject = {
name: document.getElementById('text-name').value,
url: document.getElementById('text-url').value,
count: document.getElementById('text-count').value
};
モデルはオブジェクトの配列です。私はmodel.cats.push(catObject)を使って別のオブジェクトを追加しようとしています。 ここで、text-name、text-url、text-countは、フォーム内のテキストボックスのIDです。 希望の結果が得られません。私はcatObject.nameだけがmodel.catsにプッシュされ、catObject.urlとcatObject.countは追加されていないので、 'undefined'はmodel.cats.imgUrlとmodel.cats.clickCountの値です。 必要に応じてフルコードを追加できます。私は物事をしようとしました..誰かが私がここに何かを見逃しているかどうかを確認できますか?前もって感謝します。オブジェクトの配列にオブジェクトを追加するjavascript push()メソッド
不足している行: 'cats.push(catObject);' – scunliffe
あなたはcats' '内の既存のオブジェクトよりもcatObject''で異なる性質を命名しています。 'imgUrl'ではなく' url'です。 'clickCount'の代わりに' count'を使います。これらのプロパティ名を変更するだけです。 –
マイクありがとう。それは魔法のように働いた。 – sumi