這裏非常noobie問題,但只是不能包裹我的愚蠢的大腦圍繞此。用.push分組對象然後輸出到字符串
我有2列:
var catUri = [
{ catUri : "//test.com//test1" },
{ catUri : "//test.com//test2" }
];
var catKey = [
{ catKey : "test1" },
{ catKey : "test2" }
];
我想加盟陣列,然後得到每個對象創建HTML像這樣的字符串...
<h2>Test</h2>
<ul>
<li><a href="//test.com//test1" title="test1">test1</a></li>
<li><a href="//test.com//test2" title="test2">test2</a></li>
</ul>
我試圖合併像這樣:
var merge = [];
merge.push(catUri, catKey);
將返回:
[[Object { catKey="Test1"}, Object { catKey="Test2"}], [Object { catUri="//test.com//test1"}, Object { catUri="//test.com//test2"}]]
這裏是我開始迷路的地方(如果我還沒有失去)......當我嘗試從push對象獲取一個字符串時,我不斷收到一個未定義的對象。
$.each(merge, function(){
var str = '<li><a href="' + this.catUri + '" title="' + this.catKey + '">' + this.catKey + '<\/a><\/li>';
console.log(str);
});
將返回:
<li><a href="undefined" title="undefined">undefined</a></li>
<li><a href="undefined" title="undefined">undefined</a></li>
通過一個普通的對象循環返回我的預期結果。
$.each(catKey, function(){
var str = '<li>' + this.catKey + '</li>';
console.log(str);
});
<li>test1</li>
<li>test2</li>
我可能沒有正確地合併這些對象。很感謝任何形式的幫助。
感謝您的幫助馬克。我甚至不得不將這些放在首位。經過數小時的痛苦,知道如何做到這一點還是很好的。 – MDeane