각 성분의 양을 변경하기 위해 래서 피를 업데이트하고 싶습니다. 첫 번째 값을 넣을 때 모든 것이 잘 작동하지만 이후에는 원래 값이 아닌 업데이트 된 값으로 업데이트됩니다. 원래 값을 유지하고 그들을 교환 할 수있는 두 번째 배열을 설정하는 시도했지만 작동하지 않았다. 다음은 스크립트 http://jsfiddle.net/a8YTa/3/의 라이브 버전입니다. 나는 jsfiddle이 제 질문을 분명하게 보이기를 바랍니다.배열의 값을 업데이트해야하지만 원래 값을 유지해야합니다.
편집 : 여기가 원래 값으로 두 번째 배열을 설정하려고 한 버전이며 http://jsfiddle.net/a8YTa/5/
편집을 작동하지 않았다 : 여기에 요청 문제의 코드로 :
var numIngred = document.getElementsByClassName('ingred');
var initServ = document.getElementsByClassName('servnumber')[0].innerHTML;
var newServ = document.getElementById('newserv');
var divider = 0;
function changeServ(){
divider = initServ/newServ.value;
var i=0;
for(i=0; i<numIngred.length; i++){
numIngred[i].innerHTML = numIngred[i].innerHTML/divider;
}
}
newServ.oninput = changeServ;
원래 값이
HTML :
Serves: <span class="servnumber">8</span><br/><br/>
How many would you like to serve?:<input id="newserv" />
<br/><br/>
<span class="ingred">1</span> Apple <br/>
<span class="ingred">3</span> Peaches <br/>
<span class="ingred">.5</span> Pineapples <br/>
<span class="ingred">2</span>lbs nuts <br/>
<span class="ingred">6</span> small peppers <br/>
여기에 적절한 코드를 게시 할 수 있습니까? 앞으로 누군가를 읽으 려하고 jsfiddle이 사라진다면 질의 응답은 따라 올 수 없을 것입니다. –
물론, 게시 할 수 있지만 정답은 다른 jsfiddle에 대한 링크이기도합니다. – kugyousha