Не большой скрипт сложения чисел
Здравствуйте, есть код, как пример:
<div id="chat"> <div id="sms">500</div> <div id="sms">600</div> <div id="sms">600</div> <div id="sms">900</div> <div id="sms">1000</div> <div id="sms">500</div> <div id="sms">700</div> <div id="sms">500</div> <div id="sms">800</div> </div> <div id="result">2000+полученное число</div> Подскажите не больший скриптик который бы слаживал все числа с ID=sms и вставлял полученное число в ID=result |
sim4ik-one,
В пределах страницы id элемента должен быть уникален. А у тебя их 9. |
Coriolan161,
А если за месть div id=sms указать input value=число?) |
sim4ik-one,
Грамотно мыслишь. Добро |
К примеру получится тогда у меня такой код:
<div id="chat"> <input type="text" name="" id="sms1" value="500" /> <input type="text" name="" id="sms2" value="700" /> <input type="text" name="" id="sms3" value="500" /> <input type="text" name="" id="sms4" value="900" /> <input type="text" name="" id="sms5" value="600" /> <input type="text" name="" id="sms6" value="500" /> </div> <div id="result"></div>
function addIt() {
var sms1 = +document.getElementById("sms1").value;
var sms2 = +document.getElementById("sms2").value;
var sms3 = +document.getElementById("sms3").value;
var sms4 = +document.getElementById("sms4").value;
var sms5 = +document.getElementById("sms5").value;
var sms6 = +document.getElementById("sms6").value;
document.getElementById("result").value = sms1 + sms2 + sms3 + sms4 + sms5 + sms6;
}
При этом число input может быть и 100 значит в скрипте надо прописать все это?) |
sim4ik-one,
Ты не помнишь зачем придумали классы? |
Coriolan161,
Дак а что изменится из того что я поменяю id="sms1" на class="sms" |
sim4ik-one,
потому что ты элементы с одним классом можешь толпой сразу собрать в коллекцию, вместо того, чтобы c каждым id возиться ! |
Coriolan161,
воот, этого я и хочу, а вот как это сделать не знаю) |
<div id="chat">
<input type="text" name="" id="sms1" value="500" />
<input type="text" name="" id="sms2" value="700" />
<input type="text" name="" id="sms3" value="500" />
<input type="text" name="" id="sms4" value="900" />
<input type="text" name="" id="sms5" value="600" />
<input type="text" name="" id="sms6" value="500" />
</div>
<button id="sum">Click me</button>
<div id="result"></div>
<script>
window.addEventListener('load', loadContent);
function loadContent() {
sum.onclick = function() {
var len = chat.children.length, summa = 0;
while (len--) summa += +chat.children[len].value;
result.innerHTML = summa;
};
}
</script>
вариант :) |
Poznakomlus,
огромное спасибо) получилось) вот пытаюсь применить скрипт не к id а к class но что-то не получается, подскажите, где ошибка?)
<div class="entries">
<input type="text" value="500" />
<input type="text" value="700" />
<input type="text" value="500" />
<input type="text" value="900" />
<input type="text" value="600" />
<input type="text" value="500" />
</div>
<div id="result"></div>
<script>
window.addEventListener('load', loadContent);
function loadContent() {
jQuery(document).ready(function($){
var des = document.getElementsByClassName('entries');
var len = des, summa = 0;
while (len--) summa += +des[len].value;
result.innerHTML = summa;
});
}
</script>
|
sim4ik-one,
класс надо ипутам добавлять |
рони,
Так тоже не работает :(
<div >
<input type="text" class="entries" value="500" />
<input type="text" class="entries" value="700" />
<input type="text" class="entries" value="500" />
<input type="text" class="entries" value="900" />
<input type="text" class="entries" value="600" />
<input type="text" class="entries" value="500" />
</div>
<div id="result"></div>
<script>
window.addEventListener('load', loadContent);
function loadContent() {
jQuery(document).ready(function($){
var des = document.getElementsByClassName('entries');
var len = des, summa = 2000;
while (len--) summa += +des[len].value;
result.innerHTML = summa;
});
}
</script>
|
Если быть точным то код выглядит вот так:
<div id="allEntries">
<div class="entries">
<input type="text" value="500" />
</div>
<div class="entries">
<input type="text" value="500" />
</div>
<div class="entries">
<input type="text" value="500" />
</div>
<div class="entries">
<input type="text" value="500" />
</div>
<div class="entries">
<input type="text" value="500" />
</div>
<div class="entries">
<input type="text" value="500" />
</div>
</div>
<div id="result"></div>
<script>
window.addEventListener('load', loadContent);
function loadContent() {
jQuery(document).ready(function($){
var len = allEntries.children.length, summa = 2000;
while (len--) summa += +allEntries.children[len].value;
result.innerHTML = summa;
});
}
</script>
|
| Часовой пояс GMT +3, время: 07:38. |