как вывести сумму 3х (value) select
Доброго времени суток!
подскажите как вывести сумму всех value в select
value берется из options
надо 14
с уважением!
подскажите как вывести сумму всех value в select
value берется из options
$(document).ready(function(){
$("select").change(function () {
var str = "";
$("select option:selected").each(function () {
str += $(this).text() + " ";
});
$("#test").text(str);
})
.change();
});
это выводит например 1 5 8 надо 14
с уважением!
Комментарии: 8
Ох уж эти жиквери-писалкины. Даже числа сложить без него уже не умеют.
html:
html:
<select multiple>
<option val="1">1</option>
<option val="2">2</option>
<option val="3">3</option>
<option val="4">4</option>
<option val="5">5</option>
<option val="6">6</option>
</select>
js:// Underscore.js isArray()
var isArray = Array.isArray || function(obj) {
return toString.call(obj) == '[object Array]';
};
$('select').on('change', function(e) {
var $this = $(this),
values = $this.val(),
summ = 0;
if (isArray(values)) {
for (var i = 0, length = values.length; i < length; i++) {
summ += parseInt(values[i], 10);
}
} else {
summ = values;
}
console.log(summ); // <- result
}).triggerHandler('change'); // 'triggerHandler'! Not 'change()' or "trigger('change')"!
мало того эти жеквери-писалкины не могут запустить этот код
но ход мысли вроде понятен
попытаюсь сам слепить используя жеквери
<html>
<head>
<script type='text/javascript' src='underscore-min.js'></script>
<script type="text/javascript" language="javascript">
// Underscore.js isArray()
var isArray = Array.isArray || function(obj) {
return toString.call(obj) == '[object Array]';
};
$('select').on('change', function(e) {
var $this = $(this),
values = $this.val(),
summ = 0;
if (isArray(values)) {
for (var i = 0, length = values.length; i < length; i++) {
summ += parseInt(values[i], 10);
}
} else {
summ = values;
}
console.log(summ); // <- result
}).triggerHandler('change'); // 'triggerHandler'! Not 'change()' or "trigger('change')"!
</script>
</head>
<body>
<select multiple>
<option val="1">1</option>
<option val="2">2</option>
<option val="3">3</option>
<option val="4">4</option>
<option val="5">5</option>
<option val="6">6</option>
</select>
</body>
</html>
в консоль хрома у меня ниче не пишетно ход мысли вроде понятен
попытаюсь сам слепить используя жеквери
Не, андерскор подключать не надо, я просто функцию из него выдернул, остальное из него для этого примера не нужно.
Честно говоря, не знаю почему у вас не работает, может потому что из приведённого выше кода видно, что jquery не подключен? :-) Он как раз таки нужен)
И добавьте доктайп перед тегом html:
Честно говоря, не знаю почему у вас не работает, может потому что из приведённого выше кода видно, что jquery не подключен? :-) Он как раз таки нужен)
И добавьте доктайп перед тегом html:
<!DOCTYPE html>
<html>
Это доктайп html5, и когда он прописан, то писать атрибуты type и language в теге script уже не надо, можно просто:<script>..</script>
или<script scr="/js/scripts.js"></script>
з.ы. в следующий раз нажимайте ссылку «Ответить» под автором комментария (в данном случае под моим), а не на кнопку «Оставить новый комментарий», потому что при ответе на конкретный коммент автору этого комментария придёт уведомление на почту.
Доброго времени суток, Алексей!
я jquery подключал скрипт не заработал :(
Вопчем мне надо создать массив и выдернуть из него отмеченные селесты
а далее вывести x = a1+a2+a3
где а данне из массива
прально я мыслю?
С уважением
я jquery подключал скрипт не заработал :(
Вопчем мне надо создать массив и выдернуть из него отмеченные селесты
а далее вывести x = a1+a2+a3
где а данне из массива
прально я мыслю?
С уважением
Как вы определили что он не заработал? Визуально на странице ничего не происходить не будет. Результат суммирования значений выводится в консоль браузера. Это вот эта строка:
Если вы не понимаете как это сделать, то читайте основы яваскрипта, например здесь.
Попробуйте заменить вышеприведённую строчку кода на вот это:
console.log(summ); // <- result
Дальше вы можете делать с переменной summ всё, что пожелаете — вставить куда-нибудь на страницу или что угодно.Если вы не понимаете как это сделать, то читайте основы яваскрипта, например здесь.
Попробуйте заменить вышеприведённую строчку кода на вот это:
alert(summ); // <- result
Если не будет всплывающего окна с результатом, то ошибка действительно где-то в другом месте.
Кстати вот:
http://jsfiddle.net/Qm4cp/1/
http://jsfiddle.net/Qm4cp/1/
Спасибо, Алексей что направляете учится, специально для чтива взял планшетник
в js я новичек
но про консоль знаю, ни в хроме ни в фаерфоксе
при выборе селестов ниче не нвыводит
с уважением
пошел учится
в js я новичек
но про консоль знаю, ни в хроме ни в фаерфоксе
при выборе селестов ниче не нвыводит
с уважением
пошел учится
Http://jsfiddle.net/qm4cp/1/
Этот код я уже пытался переписать
но у меня ничего не вышло :(
но я все равно его добью :)
Этот код я уже пытался переписать
но у меня ничего не вышло :(
но я все равно его добью :)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.