[英]getElementById from Object.keys(data)
我有簡單的Ajax代碼,解析Json數據並在其中填充動態div。 當我想動態獲取getElementById
時遇到問題。
我的鍵數組成功返回= [“ blue”,“ red”,“ etc” ..],我有blue-data,red-data等etc數據div ID。
<div id="blue-data">myblue</div>
<div id="red-data">myred</div>
<div id="etc-data">myetc</div>
我的代碼如下:
success: function(data) {
Object.keys(data).forEach(function(key,index) {
console.log(document.getElementById(''+key+'-data').innerHTML);
});
});
當我運行時給出:
的console.log(的document.getElementById( '' +鍵+ ' - 數據')的innerHTML。);
線
Error
null is not an object (evaluating 'document.getElementById(''+key+'-data').innerHTML')
但是在控制台中,輸出為;
myblue
myred
myetc
我怎樣才能解決這個問題? 我想與鍵數據div內部值。
如您所說,如果返回的數據是一個Array,則Object.keys
不是您應使用的,因為它要遍歷Objects的屬性(鍵)。 如果只有數組,則直接在其上循環:
// This is just simulating the result of your `success` handler's argument: let data= ["blue","red","etc"]; // This would be INSIDE of your success callback function data.forEach(function(item) { console.log(document.getElementById(item + '-data').textContent); });
<div id="blue-data">myblue</div> <div id="red-data">myred</div> <div id="etc-data">myetc</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.