Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 08.03.2014, 11:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ruslite,
пока советую помедитировать над строкой
msg = $("#messageInput").val();
Ответить с цитированием
  #12 (permalink)  
Старый 08.03.2014, 11:25
Аватар для kotamirov
Аспирант
Отправить личное сообщение для kotamirov Посмотреть профиль Найти все сообщения от kotamirov
 
Регистрация: 28.02.2014
Сообщений: 45

Сообщение от ruslite Посмотреть сообщение
нет, не хочет к сожалению. А может реализовать, чтобы форму нельзя было отправлять чаше 3 сек? Как это можно сделать?
массив localStorage используй для хранения времени предыдущего отправления формы, и сравнивай с текущем временем.
Ответить с цитированием
  #13 (permalink)  
Старый 08.03.2014, 11:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ruslite,
flag = true; надо вынести за submit
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>

<body>
<div class="example">
			<form class="form-inline" id="messageForm">
				<input id="nameInput" type="hidden" class="input-medium" value="<?php echo $log_username;?>"  />
				<input id="canalInput"  type="hidden" class="input-medium" value="<?php echo $name;?>"  />
				<div id="messageInput" name="messageInput1" placeHolder="Ваше сообщение">12345</div>

				<input  type="submit" value="Отправить" onclick="$('.emoji-wysiwyg-editor').html('')"/>
			</form>

			</div>
<script>
   flag = true;
  $( "#messageForm" ).submit( function() {
	var nameVal = $("#nameInput").val();
    msg = $("#messageInput").html();
    var canalVal = $("#canalInput").val();
    if (nameVal && msg && flag) {
		  flag = false;
		  window.setTimeout(function () {
			  flag = true
		  }, 3000) ;
      alert("форма отправлена");
    }
   else  {alert("ждите отстоя пены")};


	return false;
});

</script>
</body>

</html>
Ответить с цитированием
  #14 (permalink)  
Старый 08.03.2014, 11:29
Аспирант
Отправить личное сообщение для ruslite Посмотреть профиль Найти все сообщения от ruslite
 
Регистрация: 01.03.2014
Сообщений: 53

Сообщение от kotamirov Посмотреть сообщение
массив localStorage используй для хранения времени предыдущего отправления формы, и сравнивай с текущем временем.
можете показать на примере?
Ответить с цитированием
  #15 (permalink)  
Старый 08.03.2014, 11:30
Аспирант
Отправить личное сообщение для ruslite Посмотреть профиль Найти все сообщения от ruslite
 
Регистрация: 01.03.2014
Сообщений: 53

Сообщение от рони Посмотреть сообщение
ruslite,
flag = true; надо вынести за submit
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>

<body>
<div class="example">
			<form class="form-inline" id="messageForm">
				<input id="nameInput" type="hidden" class="input-medium" value="<?php echo $log_username;?>"  />
				<input id="canalInput"  type="hidden" class="input-medium" value="<?php echo $name;?>"  />
				<div id="messageInput" name="messageInput1" placeHolder="Ваше сообщение">12345</div>

				<input  type="submit" value="Отправить" onclick="$('.emoji-wysiwyg-editor').html('')"/>
			</form>

			</div>
<script>
   flag = true;
  $( "#messageForm" ).submit( function() {
	var nameVal = $("#nameInput").val();
    msg = $("#messageInput").html();
    var canalVal = $("#canalInput").val();
    if (nameVal && msg && flag) {
		  flag = false;
		  window.setTimeout(function () {
			  flag = true
		  }, 3000) ;
      alert("форма отправлена");
    }
   else  {alert("ждите отстоя пены")};


	return false;
});

</script>
</body>

</html>
А как вынести flag?
Ответить с цитированием
  #16 (permalink)  
Старый 08.03.2014, 11:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ruslite,
строка 23
Ответить с цитированием
  #17 (permalink)  
Старый 08.03.2014, 11:34
Аспирант
Отправить личное сообщение для ruslite Посмотреть профиль Найти все сообщения от ruslite
 
Регистрация: 01.03.2014
Сообщений: 53

Сообщение от рони Посмотреть сообщение
ruslite,
строка 23
всм вот так?
<script>flag =true; </script>
<input type="submit" value="Отправить" onclick="$('.emoji-wysiwyg-editor').html('')"/>
Ответить с цитированием
  #18 (permalink)  
Старый 08.03.2014, 11:40
Аспирант
Отправить личное сообщение для ruslite Посмотреть профиль Найти все сообщения от ruslite
 
Регистрация: 01.03.2014
Сообщений: 53

посоветовали вот так
if(Date.now() - lastCallTime >= 3 * 1000) {
    socket.emit(...);
    lastCallTime = Date.now(); // или new Date().getTime();
}

Как правильно объявить lastCallTime выше кода?
Ответить с цитированием
  #19 (permalink)  
Старый 08.03.2014, 11:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

ruslite,
ну чем вас решение то из 13 поста неустроило ??? понажимайте там отправить -- форма отправится нечаще 1 раза в три секунды
замените алерт в 33 строке на то что вам нужно
Ответить с цитированием
  #20 (permalink)  
Старый 08.03.2014, 13:03
Аспирант
Отправить личное сообщение для ruslite Посмотреть профиль Найти все сообщения от ruslite
 
Регистрация: 01.03.2014
Сообщений: 53

Сообщение от рони Посмотреть сообщение
ruslite,
ну чем вас решение то из 13 поста неустроило ??? понажимайте там отправить -- форма отправится нечаще 1 раза в три секунды
замените алерт в 33 строке на то что вам нужно
просто все данные обрабатываются в отдельном js скрипте, а форма на php странице. Мне не надо указывать переменные msg? nameVal и т.д.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать все содержимое страницы не активным son313 jQuery 9 10.07.2013 16:58
Как сделать таймер как в САР? jelome Элементы интерфейса 0 27.06.2011 12:40
Как сделать, чтобы при наведении на кнопку справа от нее появлялись текстовые ссылки? Tass Общие вопросы Javascript 7 17.02.2011 09:06
Как два раза вставить таймер alexvost Общие вопросы Javascript 2 08.02.2011 02:28
Как сделать постоянную проверку на javascript alb Общие вопросы Javascript 18 09.01.2010 14:05