06.04.2016, 08:16
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,134
|
|
Sylar V,
return str + el.value
|
|
06.04.2016, 09:54
|
Интересующийся
|
|
Регистрация: 31.03.2015
Сообщений: 27
|
|
рони, А можно, пожалуйста, подробнее? Может как-то можно вставить див? Мне нужно получать текст перед значением.
К примеру, чтобы приходило:
Диаметр: значение (.function1)<br />
Масса: значение (.function2)<br />
|
|
06.04.2016, 10:02
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,134
|
|
Sylar V,
(непереводимый испанский мат) ... по русски напишите на английском, чего хотите сделать. например html до и после
|
|
06.04.2016, 10:05
|
Интересующийся
|
|
Регистрация: 31.03.2015
Сообщений: 27
|
|
рони,
Вот JS:
$(function(){
var a = $.map($('.function1, .function2, .function3'),function(el) {
return el.value
}) ;
alert(JSON.stringify(a)) ;
})
Сейчас данные приходят вот так:
1,2,3
Нужно, чтобы приходили вот так:
Диаметр: 1
Масса: 2
Размер: 3
Я уже не знаю, как объяснить...
|
|
06.04.2016, 10:26
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
Сообщение от Sylar V
|
рони,
Вот JS:
$(function(){
var a = $.map($('.function1, .function2, .function3'),function(el) {
return el.value
}) ;
alert(JSON.stringify(a)) ;
})
Сейчас данные приходят вот так:
1,2,3
Нужно, чтобы приходили вот так:
Диаметр: 1
Масса: 2
Размер: 3
Я уже не знаю, как объяснить...
|
Sylar V,
А откуда эти данные берутся? Там, где они находятся, по идее, должны быть и соответствующие слова. Иначе кто знает, что значит какое число?
|
|
06.04.2016, 10:37
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,134
|
|
Сообщение от Sylar V
|
Нужно, чтобы приходили вот так:
Диаметр: 1
Масса: 2
Размер: 3
|
ок
|
|
06.04.2016, 10:56
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,134
|
|
Sylar V,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(function() {
var a = ["Диаметр","Масса","Размер"].reduce(function(b, a, c) {
b[a] = document.querySelector(".function" + (c + 1)).value;
return b
}, {});
alert(JSON.stringify(a))
})
</script>
</head>
<body>
<input type="text" class="function1" value="1">
<input type="text" class="function2" value="2">
<input type="text" class="function3" value="3">
</body>
</html>
Последний раз редактировалось рони, 12.04.2016 в 14:08.
|
|
06.04.2016, 13:08
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,134
|
|
Sylar V,
document.querySelector([".diametr",".massa",".razmer"][c]).value;
|
|
12.04.2016, 00:37
|
Интересующийся
|
|
Регистрация: 31.03.2015
Сообщений: 27
|
|
рони, Большое спасибо! Все работает, но такой вопрос, стоит мне вписать еще классы, как код не работает. Как сделать 5 значений, чтобы каждое было на новой строчке?
|
|
12.04.2016, 13:11
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
Sylar V,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(function () {
var arr = [];
$('[class^="function"]').each(function () {
arr.push( $(this).attr('name'));
});
var a = arr.reduce(function (b, a, c) {
b[a] = document.querySelector(".function" + (c + 1)).value;
return b
}, {});
alert(JSON.stringify(a))
});
</script>
</head>
<body>
<input type="text" class="function1" name="Диаметр" value="1">
<input type="text" class="function2" name="Масса" value="2">
<input type="text" class="function3" name="Размер" value="3">
<input type="text" class="function4" name="Материал" value="4">
<input type="text" class="function5" name="Цвет" value="5">
</body>
</html>
Последний раз редактировалось Dilettante_Pro, 12.04.2016 в 18:39.
|
|
|
|