Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.07.2015, 17:07
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Как передать значение из формы
Здравствуйте. Есть форма
<form action="">
        <input type="text" name="" id="number" value="1000">
        <input type="submit" value="Задать время" onclick="setTime()">
        </form>

Как присвоить переменной в js коде значение, введенное в input с id= number? Желательно на примере.
Ответить с цитированием
  #2 (permalink)  
Старый 04.07.2015, 19:03
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

document.getElementById('number').oninput = function() {
     var val = this.value;
};
Ответить с цитированием
  #3 (permalink)  
Старый 05.07.2015, 21:01
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Что-то не то. Пишет ''undefined".
Ответить с цитированием
  #4 (permalink)  
Старый 06.07.2015, 02:04
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Stroy,
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
  <form action="">
    <input type="text" name="" id="number" value="1000">
    <input type="submit" value="Задать время" onclick="setTime()">
  </form>
  
  <script>
    function setTime() {
      var val = document.getElementById('number').value;
      alert(val);
    }
  </script>

</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 06.07.2015, 13:39
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Извините за назойливость, но что-то не получается. Значение присваивается, но при этом не передается в другую функцию
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script>
        var ms = 1000;
        var  number;
        var interval;
        function MP3(){
            document.getElementById('player').play();          
        }
        function setTime () {
               number = document.getElementById('number').value;
        }
        function SetInterval(){
           number = number * ms;
			interval = window.setInterval(MP3(), number);
            console.log(number);
            
		}
		function ClearInterval(){
			window.clearInterval(interval);
		}
        
    </script>
    <style type="text/css">
        div{
            margin: 0 auto;
            width: 400px;
        }
    </style>
</head>
<body>
       <div>Музыка
        <audio id="player" src="DA1.mp3" controls></audio>
        <form action="mp3.html" >
        <input type="text" name="numb" id="number" value="10">
        <input type="submit" value="Запуск цикла" onclick="setTime()">
        <input type="submit" value="Остановка таймера">
        </form>
        </div>       
    <button onclick="SetInterval()" value="">Запуск цикла</button><br>
    <button onclick="ClearInterval()" value="">Прервать цикл</button>

</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 06.07.2015, 15:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,071

Сообщение от Stroy
window.setInterval(MP3(), number);
зачем скобки?
Ответить с цитированием
  #7 (permalink)  
Старый 06.07.2015, 15:29
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Уже исправил. Но таймер все равно не работает. В консоли выдает NaN.
Ответить с цитированием
  #8 (permalink)  
Старый 06.07.2015, 16:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,071

Stroy,
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script>
        var ms = 1000;
        var  number;
        var interval;
        function MP3(){
            document.getElementById('player').play();
        }
        function setTime () {
               number = document.getElementById('number').value;
        }
        function SetInterval(){
            !number &&  setTime();
            !+number && (number = 10);
            number = number * ms;
            MP3();
            ClearInterval();
			interval = window.setInterval(MP3, number);
		}
		function ClearInterval(){
			window.clearInterval(interval);
		}

    </script>
    <style type="text/css">
        div{
            margin: 0 auto;
            width: 400px;
        }
    </style>
</head>
<body>
       <div>Музыка
        <audio id="player" src="http://boobooka.com/wp-content/uploads/2013/01/moneta.mp3" controls></audio>
        <form action="mp3.html" onsubmit="return false" >
        <input type="text" name="numb" id="number" value="10">
        <input type="submit" value="установить время цикла" onclick="setTime()">
        </form>
        </div>
    <button onclick="SetInterval()" value="">Запуск цикла</button><br>
    <button onclick="ClearInterval()" value="">Прервать цикл</button>

</body>
</html>
Ответить с цитированием
  #9 (permalink)  
Старый 06.07.2015, 16:43
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Всё работает. Но хотелось бы разобраться. Что я делал неправильно?
Ответить с цитированием
  #10 (permalink)  
Старый 06.07.2015, 17:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,071

Stroy,
в основном строка 39 и у вас строгий порядок должен быть сначала установка времени -- строка 41 потом всё остальное -- поэтому если кто пропустит куча "защит от дурака" - строки 17 и 18 --- строка 21 защита от повторного запуска интервала
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать значение параметра в скрипт через переменную. Ellis Javascript под браузер 5 29.10.2015 13:08
Видимость переменной при асинхронном запросе. Как передать и получить значение? Stroganov Ilya Общие вопросы Javascript 10 17.10.2014 17:33
Как правильно передать значение. xadv Работа 2 05.11.2010 12:55
Как передать значение по ссылке на другую страницу сайта Rollo Общие вопросы Javascript 7 18.10.2010 15:02
как передовать и парсить значение переменной по URL? FATALITY Общие вопросы Javascript 10 25.03.2010 19:32