Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Передача нового значения value в select

Добрый день. У меня возникла небольшая проблемка с изменением значения в выпадающем списке. Суть такова: есть блок со списком элементов, у каждого элемента свои свойства.

При клике на какой-нибудь элемент списка слева в правой таблице появляются соответствующие значения. Текстовые поля input правильно отображают получаемые значения, а вот с выпадающим списком получается запара. Я получаю от сервлета его значение (назовем его merchantId), и должна найти и сравнить со значением получаемым из другого сервлета. Вот этот второй сервлет возвращает список всех участников : их id и name . Мне необходимо вставить в значение value переменную merchantId и установить соответствующее этому id name и сделать его selected. Второй день сижу... Помогите пожалуйста. Вот костяк
<div class="fraud_event_block_2">
            <table id="fraudListSettings" class="fraudListSettings">
                <tr>
                    <th>Настройка</th>
                    <th>Коммерсант</th>
                    <th>Значение</th>
                </tr>
                <tr>
                    <th>проверка</th>
                    <th>проверчкмммм</th>
                    <th>проверка значения</th>
                </tr>
            </table>
        </div>


А вот мои запросы
function getMerchantList(){
        var xml='<request type="mng_GetMerchantList">'+
            '<sessionId>' + adSessionId + '</sessionId>'+
            '<pageSize>' + 999999 + '</pageSize>' +
            '<pageNum>' + 1 + '</pageNum>' +
            '</request>';
        postxml('/j/LS/mng/merchant/mng_GetMerchantList', xml,
            function(xml){
                $(xml).find('Merchant').each(function (){
                    $('.fraudMerchantList').append('<option value="' + $(this).find('id').text() + '">'
                        + $(this).find('name').text() + '</option>');
                });

                /*$(".fraudMerchantList option[value='1']").attr("selected", "selected");*/
            })
    }
    var counter = 0;
    function selectFraudTypeSettings(xml){
        $(xml).find("fraudEventTypeDataList").each(function(){
            var items = $(this).attr('totalCount');
            alert(items);
            $("#fraudListSettings").html("");
            if (items > 0){
                $(this).find('fraudEventTypeData').each(function(){
                    varName = $(this).find('varName').text();
                    data = $(this).find('data').text();
                    FroMerchantId = $(this).find('merchantId').text();
                    eventTypeDataId = $(this).find('id').text();
                    if (eventTypeDataId != 0){
                        $("#fraudListSettings").append('<tr><th><input type="text" value="'+ varName +'"></th><th class="test"><select class="fraudMerchantList" id="'+counter+'"></select><span>'+FroMerchantId+'</span></th><th><input type="text" value="'+ data +'"/></th></tr>');
                    }
                    counter++;
                });
                getMerchantList();
                var myselect = $("#fraudListSettings select"+ counter);
                options = myselect.options;
                for(var i = 0; i< options.length; i++){
                    if(options[i].value == FroMerchantId){
                        $(("#"+counter).option[value=''+FroMerchantId+'']).attr("selected", "selected");
                    }
                }
            }
        })
    }


Если коротко, мне просто нужно установить выбранным в вывадающем поле значение с id совпадающим с полученным. Надеюсь подробно расписала. Заранее спасибо
Циферки под закрашенными полями это получаемые id - шники клиентов
Ответ:
Сообщение от tvixa
getMerchantList();
в этой функции вам нужно установку selected делать
строки после 35 не будут ждать когда сработает строка 34 , сработают раньше чем 34
Вопрос: Значение из select option

Есть такая часть кода:
e.forEach(function (e) {
        t.forEach(function (t) {
            var months = 1;
            var value = 1;
            e == t.id ?
                $('<div class="unit" data-id="' + t.id + '"><div class="billboard-address">' + t.address +
                    '<a href="" class="close"></a></div><label style="margin: 0 14px 0 0; display: inline-block;' +
                    ' float: right;"><input type="checkbox" name="need_design" value="1" checked="checked" ' +
                    'style="width: 14px;"><div class="label">Разработать макет рекламного щита</div></label>' +
                    '<div class="test">Стоимость аренды щита за 1 месяц: ' + t.price + '</div>' +
                    '<div class="test">Срок размещения в месяцах: <script>function displayVals' + t.id + 
                    '(){value = $( "#select' + t.id + '" ).val();};' +
                    '$( "select' + t.id + '" ).change( displayVals' + t.id + ' );displayVals' + t.id +
                    '();</script><select id="select' + t.id + 
                    '" onChange="displayVals' + t.id + '(); alert(value);">' +
                    '<option value="1">1</option><option value="2">2</option><option value="3">3</option>' +
                    '<option value="4">4</option><option value="5">5</option><option value="6">6 (скидка -6%)</option>' +
                    '<option value="7">7 (скидка -7%)</option><option value="8">8 (скидка -8%)</option>' +
                    '<option value="9">9 (скидка -9%)</option><option value="10">10 (скидка -10%)</option>' +
                    '<option value="11">11 (скидка -11%)</option><option value="12">12 (скидка -12%)</option>' +
                    '</select>' + 
                    '<div class="new-price">Итоговая цена по данному щиту: <span>' + months*t.price*value + '</span>' +
                    '</div></div></div>').prependTo("#request-form .selected-billboards .list")
                : r.push(e)
        })
    }),

Прошу прощение за неудобоваримость кода, пишу как умею..

При изменении select option у меня вылетает окошка alert'ом, и в нем отображается правильное текущее value. А как эту value динамически менять вот в этом месте:
...
'<div class="new-price">Итоговая цена по данному щиту: <span>' + months*t.price*value + '</span>' +
...
Чтобы при изменении select option value - сразу показывалось итоговое значение?
Ответ:
Сообщение от Spass
Пожалуйста.

На будущее отделяй мух от котлет (js от html), и все будет намного проще.
Тема в том, что так было изначально.. но совет приму))
Есть еще подобный вопрос, как теперь можно отловить все итоговые значения каждого товара и просуммировать их..
Т.е. это должна быть функция внутри функции $('div.unit select').on('change', function(), правильно?
---
С этим сам разобрался
var sumCost = 0, sumDiscount = 0;
    $('.shield-price').each(function(){
        sumCost += parseInt($(this).html(), 10);
    });
    $('.final-cost').html('Итого: <span>'+sumCost+'</span> руб.');
    $('.shield-discount').each(function(){
        sumDiscount += parseInt($(this).html(), 10);
    });
    $('.final-discount').html('Итоговая скидка: <span>'+sumDiscount+'</span> руб.');

Однако, если все значения seect выставить в 1, т.е. в то положение, когда самой скидки нет - то остается последнее значение скидки.. вместо нуля((((
Так понимаю, нужна проверка на значение всех и каждого select option val, верно?
Вопрос: Как взять значение value из формы?

Есть форма ввода текста и кнопка, которая запускает функцию использующую значение value этой формы.
Доступ к значению я делал так-
idFormi.value,
Или так
document.getElementById ('idFormi').value;
Без разницы.

но беда в том, что функция берет значение которое изначально при загрузке страницы указано, если его поменять- также берет тоже значение. Как взять измененное значение?
Ответ: Всё, разобрался, спасиБог всем, оказывается во первых была в формуле ошибка, во вторых при вычислении берется значение, но это значение распознается как строка, а не число, поэтому не получалось и ошибку то найти
Вопрос: Поменять значение value через jQ

Нужен скрипт, который меняет значение value на любое другое.

HTML5
1
2
3
4
5
6
7
8
<script>
$("#push").click(function () {
$("#change").html("<input type='text'  value='Текст1'");

});
</script>
<button id="push">Нажать</button>
<div id="text">Текст который нужно вставить в значение value</div>
==================

Или какой либо другой способ
Ответ: Дмитрий_А, так?
HTML5
1
2
3
<input type="text" value="" />
<button id="push">Нажать</button>
<div id="text">Текст который нужно вставить в значение value</div>
Javascript
1
2
3
4
5
$(function() {
    $('#push').on('click', function () {
        $('input[type="text"]').val($('#text').text());
    });
});
Вопрос: Как изменить значение Value

Как изменить значение Value? Например есть: <input type='text' id='test' value='Привет'> Например при помощи js мне надо изменить значение value на Пока. Как это сделать?
Ответ:
document.getElementById('test').value='Пока';
Вопрос: Вывести значения value из select в input

Здравствуйте. Пытаюсь вывести значения value из select. Мне нужно динамически подставлять это значения в input, соответственно при каждом изменении селекта. Подскажите пожалуйста как это попроще сделать?
<select name="sitetime" id="sitetime" onchange="with (this) document.getElementById ('rez').innerHTML =
             (selectedIndex) ? options [selectedIndex].text / 15 - 1 : '3'">

<option value="1" >60</option>
<option value="2" >90</option>
<option value="2" >120</option>
<option value="3" >150</option>
<option value="3" >180</option>
<option value="4" >210</option>
<option value="4" >240</option>
<option value="5" >270</option>
<option value="5" >300</option>
</select>
Ответ: burlesk32,
делайте макет и подробное описание
Вопрос: Активация checkbox, если значение value из input совпадает

Имею вот такую передачу значения value из checkbox в input с f_select_category. Хотелось бы узнать, реально ли реализовать?
<!DOCTYPE HTML>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>
<body>
  <div class='checkklass'>
   <p><input type='checkbox' name='a' value='699'> 4 </p>
   <p><input type='checkbox' name='a' value='700'> 5 </p>
   <p><input type='checkbox' name='a' value='701'> 6 </p>
   <p><input type='checkbox' name='a' value='702'> 7 </p>
   <p><input type='checkbox' name='a' value='703'> 8 </p>
   <p><input type='checkbox' name='a' value='704'> 9 </p>
   <p><input type='checkbox' name='a' value='705'> 10 </p>
   <p><input type='checkbox' name='a' value='706'> 11 </p>
   <p><input type='checkbox' name='a' value='707'> 12</p>
  </div>

<input name="f_select_category" type="text" maxlength="255" size="50" value="" onchange="jQuery.modal.nc_modal_confirm=true;undefined">

<script type="text/javascript">
 var check=$("input[name='a']");
check.change(function(){
 var names=',';
 check.each(function(){if($(this).is(':checked')){names+=$(this).val()+',';}});
 $("input[name='f_select_category']").val(names);
});
 $("input[name='f_select_category']").val(",");
</script>

</body>
</html>


Как сделать так, что бы checkbox'ы были активированы, если в $("input[name='f_select_category']") будут значения например:
,699,702,703,
Ответ: Возникла еще одна проблема. Скрипт должен выполнится в ajax окне, которое подгружается без перезагрузки страницы. Соотвественно обработчик DOMContentLoaded несрабатывает. На что его можно заменить? Не бред, если заменить на выполнение скрипта по движению мышки? Обработчиком mousemove
Вопрос: Получить значение value выбраного селекта

Всем привет, чет не получается получить значения с select

HTML5
1
2
3
4
5
6
7
<select name="age" id="age" spellcheck="true">
                    <option selected="true">All</option>
                    <option value="1-3">1-3</option>
                    <option value="4-7">4-7</option>
                    <option value="8-11">8-11</option>
                    <option value="11-17">11-17</option>
                </select>

Javascript
1
2
alert($("#age option:selected").val());
alert($('#municipality').val());
Ответ: asql, круто спасибо)

Добавлено через 2 часа 34 минуты
А возможно ли с поля span извлекать моментально изменяющиеся значения?
HTML5
1
<span id="age_from">10.00</span>
Вопрос: вывод значения value в конкретный блок

Помогите !!! я новичок в jQuery есть некий код в процессе которого по нажатию на checkbox должно заносится значение этого checkbox в конкретный div но как-то постоянно выводит ошибку
Вот код:
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<title>JavaScript калькулятор расчета стоимости для сайта</title>    
	<meta name="description" content="В эпоху широчайшего развития бизнеса при помощи сети Интернет актуальным является создание JavaScript калькулятора для расчета стоимости товаров или услуг компании. В этой статье я распишу создание простейшего калькулятора для сайта по продаже линолеума." />
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
	<link rel="stylesheet" type="text/css" href="css/Calculator.css" />
    <script type="text/javascript" src="js/jquery-3-1-1.js"></script>
	<script type="text/javascript" src="js/Calculator.js"></script>
</head>
<body>
	<div id="wraper">
		<h1 id="calculator">Калькулятор</h1>
			<form>
				<select id="mobSel"><!--По этому id будет срабатывать виджет-->
					<option value="dors">Выберите из списка</option>
					<option value="dors1">Металлические двери ( одностворчатые 2100х900)</option>
					<option value="dors2">Металлические двери ( двустворчатые 2000х1200)</option>
					<option value="dors3">Противопожарные двери</option>
					<option value="dors4">Технические двери</option>
					<option value="dors5">Ставни</option>
					<option value="dors6">Ворота прямые</option>
					<option value="dors7">Ворота арочные</option>
					<option value="dors8">Антивандальные решетки на кондиционер</option>
					<option value="dors9">Пластиковые окна ПВХ</option>
				</select>
			</form>
			<br/ ><br/ >
		<div id="blok1"></div>
		<div id="blok2"></div>
		<div id="other"></div>
		<br/ ><br/ >
		<div id="price"></div>
	</div>
</body>

файл js/Calculator.js
jQuery(document).ready(function() {
jQuery( "#mobSel" ).on('change', function () {
var newSelect = jQuery( this ).val();
var checkboxes = jQuery("input[type='checkbox']");
for(i=0; i<checkbox.length; i++) {
var x = checkbox[i].val();
jQuery('#price').html(x);};
});
});

В данном случае в <div id="price"></div> должно выводится значение value , а в реальности выдает ошибку:
Uncaught ReferenceError: checkbox is not defined
при нажатии на любой checkbox.
Помогите плиз
Ответ: Sprutenok000,
у вас в строке 7 var checkboxes
а в строке 8 checkbox -- разницу видите?
Вопрос: не передается значение value при динамическом изменении

Добрый день!

У меня есть поля <input> куда с помощью javascripta подставляются различные значения value при клике на картинки.
После этого я пытаюсь оперировать этими новыми значениями (отслеживая изменения этих imput'ов) , но ничего не получается.
Если я ввожу значения в поля вручную - то все работает, если изменяю их силами javascript - то нет. Буду очень благодарна любым подсказкам.

Пожалуйста, подскажите в какую сторону копать.

<script>
            var calculate = (
                function () {
                    var

                        quantityInput = document.getElementById("quantity"),
                        levelInput = document.getElementById("level"),
                        amountInput = document.getElementById("money")
                    ;
                    function calculateIt() {
                        var 

                            quantity = parseInt(quantityInput.value)
                            level = parseInt(levelInput.value)
                            amount = parseInt(amountInput.value)
                        ;
                        amount = amount || 0;
                        document.getElementById("result").innerHTML = (quantity + level) * amount + " р.";
                    }
                    return quantityInput.oninput  = levelInput.oninput  = amountInput.oninput  = calculateIt;
                }
            )()(); 
        </script>


<div id = "form">
              <form name="myForm">
<a href="#" onclick="document.myForm.money.value = '20';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.money.value = '30';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.money.value = '40';"> <img src="images.png"> </a><br>
                    <input type ="text" name ="money" value ="" size ="25" maxlength ="30" id = "money" ><br>
					
<a href="#" onclick="document.myForm.quantity.value = '20';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.quantity.value = '30';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.quantity.value = '40';"> <img src="images.png"> </a><br>	
				
                    <input type ="text" value ="" name = "quantity" id="quantity" ><br>
<a href="#" onclick="document.myForm.level.value = '20';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.level.value = '30';"> <img src="images.png"> </a>
<a href="#" onclick="document.myForm.level.value = '40';"> <img src="images.png"> </a><br>					
					
                    <input type ="text" value ="" name ="level" id="level" >
                </form>
            <div class = "result" id = "result"></div>
        </div>
Ответ:
Сообщение от govorusha
Нужен лайфхак
Хто?

Сообщение от govorusha
или как можно реализовать нужную мне задачу как-то иначе
Если ты меняешь данные скриптом - вызови нужный обработчик.