1
처음으로 로컬 저장소에서 작업 중이며 일부 JS 자습서를 통해 녹슨 작업을하고 있습니다. 2 개의 숙어로 단어를 추가 할 수있는 사전을 만든 다음 표시합니다. 개체 "dict"의 두 번째 항목을 제외한 모든 항목이 제대로 작동하지만 개체에 있지만 표시되지 않습니다. 콘솔 출력에 표시됩니다. 루프의 인덱싱 일 수 있습니다. 그래도 그것을 볼 수 없습니다. 모든 가벼운 창고는 감사하겠습니다.루프에서 객체 속성이 손실되었습니다.
function getDictionary(){
var dict = {},
dictStr = localStorage.getItem('dictionary');
if(dictStr !== null){
dict = JSON.parse(dictStr);
}
return dict;
}
function show(){
var html = "";
var resultOutput = document.getElementById("resultOutput");
var dict = getDictionary();
for(var i = 0; i < Object.keys(dict).length; i++){
key = Object.keys(dict)[i];
html += "<p class='normal-paragraph'>The english word <span style='color: green'> " + key +
" </span>in portuguese is <span style='color: green'> " + dict[key]+
"</span> <button class='removeBtn' id='"+ i +"' >x</button></p>";
resultOutput.innerHTML = html;
var buttons = document.getElementsByClassName('removeBtn');
for(var i = 0; i < buttons.length; i++){
buttons[i].addEventListener('click',remove);
}
}
console.log("");
console.log("All words: "+ JSON.stringify(dict));
}
HTML ...
<p id="sayHello"></p>
<fieldset id="translateField">
<legend> Translate english to Portuguese</legend>
<input type="text" id="newWordEng" name="newWordEng" value="" placeholder=" write the english word" >
<input type="text" id="newWordPt" name="newWordPt" value="" placeholder=" write the portuguese word">
<input type="button" id="addWordBtn" name="addWordBtn" value="Add New Word">
</form>
</fieldset>
<div id="resultOutput">
</div>
<script src="src/translate.js"></script>
</body>
그 버튼 루프 아마 다른 루프 밖으로 이동해야합니다 – charlietfl
그래, 그리고 여분의 루프가 필요하다고 생각하지 않습니다. 이 문제를 해결하기 위해 내 대답을 편집했습니다. –
도 궁금합니다. 그러나 길이가 같은지 여부는 알 수 없습니다. – charlietfl