Нужна помощь по JS

Тема в разделе "JavaScript", создана пользователем The_Wolf, 7 мар 2014.

Модераторы: ZiX
  1. The_Wolf

    The_Wolf

    Регистр.:
    21 окт 2013
    Сообщения:
    339
    Симпатии:
    189
    есть DIV блок и еще есть поле для номера (input type=number).
    Как сделать чтобы при изменении значения (input type=number) тоже изменилось значение width у блока DIV ??
    Помогите :thenks:

    Скажу по другому, ответ не соответствует вопросу, ибо в задаче не было div-width +50, было input-value -> div-width и событие onchange срабатывает после смены фокуса, до смены в input может быть что угодно и событие не сработает.
     
    Последнее редактирование модератором: 7 мар 2014
  2. Vishez

    Vishez

    Регистр.:
    19 авг 2013
    Сообщения:
    169
    Симпатии:
    81
    http://jsfiddle.net/Hiacter/J2UqU/

    Что не соответствует?
    При изменении значения у инпута ширина дива меняется? Меняется. Неважно на сколько. Не было написано что ширина должна равняться тому что было введено в инпут.
     
    Последнее редактирование модератором: 7 мар 2014
    The_Wolf нравится это.
  3. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.404
    Симпатии:
    1.185
    http://jsfiddle.net/5Zu4A/
    HTML:
    $(document).ready(function(){
        
        $('.input1').on('change', dw);
        $('.input1').on('keypress', dw);
    });
    
    function dw(){
      $(".div1").width( $(".input1").val() );
    }
     
    The_Wolf нравится это.
  4. Vishez

    Vishez

    Регистр.:
    19 авг 2013
    Сообщения:
    169
    Симпатии:
    81
    Впринципе так, если нажимать на стрелочки. Но если вводить с клавиатуры - при нажатии изменения появляются только по предыдущему вводу. Наверное это связано с особенности обработки DOM.
     
    The_Wolf нравится это.
  5. Darkness

    Darkness Постоялец

    Регистр.:
    21 янв 2013
    Сообщения:
    146
    Симпатии:
    69
    Ты не то потер, решение я уже предлагал, срабатывает всегда.
    PHP:
    <input type="number" oninput="document.getElementById('div').style.width=parseInt(this.value)" onpropertychange="document.getElementById('div').style.width=parseInt(this.value)">
    <
    div id="div"></div>
     
    The_Wolf нравится это.
  6. The_Wolf

    The_Wolf

    Регистр.:
    21 окт 2013
    Сообщения:
    339
    Симпатии:
    189
    Спасибо всем .
    останавливаюсь на :
    Код:
    $(document).ready(function(){
    
    $('.input1').on('change', dw);
    $('.input1').on('keypress', dw);
    });
    
    function dw(){
    $(".div1").width( $(".input1").val() );
    }
    
    Снова актуально.
    как сделать вывод несколько значений select на textarea.
    например : первое : второе : третий
     
    Последнее редактирование модератором: 11 мар 2014
  7. dwarf

    dwarf Постоялец

    Регистр.:
    12 июн 2011
    Сообщения:
    88
    Симпатии:
    18
    Имеется ввиду select с множественным выбором, и при выборе пользователем значений нужно дописывать\удалять их value из textarea?
     
  8. The_Wolf

    The_Wolf

    Регистр.:
    21 окт 2013
    Сообщения:
    339
    Симпатии:
    189
    Вот есть такое три :
    HTML:
    
    <select>
    <option>1</option>
    <option>2</option>
    <option>...</option>
    </select>
    
    мне нужно чтобы при изменении select>option'а сгенерировалось код в виде : первое : второе : третий
    у меня сейчас через php сгенерируется (post запросом через форму) . хочу чтобы без php работал ;)
     
  9. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.404
    Симпатии:
    1.185
    http://jsfiddle.net/CDLJu/ так?
    HTML:
    
    <input class="input1" type="text">
        
    <select id="sel">
    <option data-text="первое">1</option>
    <option data-text="второе">2</option>
    <option data-text="третий">3</option>
    </select>
    <script>
    $(document).ready(function(){
        $("select").change(function () {
                //alert($("#sel option:selected").data("text"));
                $(".input1").val($("#sel option:selected").data("text"));
         })
         .change();
    });
    </script>
    
     
  10. The_Wolf

    The_Wolf

    Регистр.:
    21 окт 2013
    Сообщения:
    339
    Симпатии:
    189
    Нет .
    у меня три селект>опция .
    <select id="sel1">
    <option data-text="первое">1</option>
    <option data-text="второе">2</option>
    <option data-text="третий">3</option>
    </select>
    <select id="sel2">
    <option data-text="первое">1</option>
    <option data-text="второе">2</option>
    <option data-text="третий">3</option>
    </select>
    <select id="sel3">
    <option data-text="первое">1</option>
    <option data-text="второе">2</option>
    <option data-text="третий">3</option>
    </select>

    и мне так надо в input или textarea : значение_первого_селекта - значение_второго_селекта - значение_третьего_селекта