Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Переменная в селекторе Jquery - странная ошибка (https://javascript.ru/forum/jquery/42198-peremennaya-v-selektore-jquery-strannaya-oshibka.html)

kapustnik 16.10.2013 19:48

Переменная в селекторе Jquery - странная ошибка
 
$(document).ready(function(){
$("#user_transport").change(function() {
	$("#user_transport option:selected").each(function() {
		var idtrans = $( this ).val();
		var weight = $("#" + 'idtrans' + "weight").val;
		alert(weight);
	});
})
});


Вот код.
По вызову алерт по идее должно было бы быть, (ИД)weight.

Но появляется странная мешанина кода.

Вот скриншот:


рони 16.10.2013 19:56

kapustnik,
где () ? в 5 строке

sphere89 16.10.2013 20:07

var weight = $("#" + idtrans + "weight").val; Вместо строки, укажите переменную.
Ну и лучше использовать $('element').on('change', function(){ ... Ваш код ... });

И не стоит делать переменные в которых простые выражения, можно инлайново использовать idtrans
$("#" + $( this ).val() + "weight").val;


Мой вариант, проверьте его:
$(document).ready(function(){
$("#user_transport").on('change', function() {
	$("#user_transport option:selected").each(function() {
		var weight = $("#" + $( this ).val() + "weight").val;
		alert(weight);
	});
})
});

kapustnik 16.10.2013 20:19

Тоже самое.

Проверяю на версии Jquery

<script src="http://yandex.st/jquery/1.7.2/jquery.min.js"></script>

sphere89 16.10.2013 20:47

Под рукой Js нету, но для селектора нужно создать отдельную переменную и посмотреть что возвращается строка. А потом уже ее как селектор использовать.

рони 16.10.2013 21:03

sphere89,
и ты тудаже
Цитата:

Сообщение от sphere89
"weight").val

где скобки?

kapustnik 16.10.2013 22:18

О какой скобке вы говорите ?

сделал мин. глючащий код. вообще ничего не понимаю.
Вот ссылка - http://yadi.sk/d/pRU2eH1IB5Tp4 (надо скачать на ПК)

или код
<!doctype html>
<head>
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>

$(document).ready(function(){

$("#testlink").on("click", function() {
var weight = $('#weight').val;
alert(weight);
});

});
</script>
</head>
<body>
<input id="weight" name="weight" value="33333"></input>
<a href="#" id="testlink">testlink</a>
</body>
</html>

рони 16.10.2013 22:50

kapustnik,
мдаа....смотрю в книгу ...
<!doctype html>
<html>
<head>
<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>
$(document).ready(function(){

$("#testlink").on("click", function() {
var weight = $('#weight').val();
alert(weight);
});

});
</script>
</head>
<body>
<input id="weight" name="weight" value="33333"></input>
<a href="#" id="testlink">testlink</a>
</body>
</html>

kapustnik 16.10.2013 23:39

В чем отличие ?

рони 16.10.2013 23:42

Цитата:

Сообщение от kapustnik
В чем отличие ?

в скобках :cray: таких кругленьких


Часовой пояс GMT +3, время: 01:42.