Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2014, 20:21   #1
ddwnik
Пользователь
 
Регистрация: 02.09.2014
Сообщений: 22
По умолчанию Авто клик по кнопке

Доброго времени суток.
Не работает код, в чем ошибка, подскажите?
Код HTML:
<form method="post" action="" id="formsend">
  <input type="button" name="formSubmit" onclick="start()" id="formSubmit" value="GO" />
</form>
<script>

function FormSend() {
    setTimeout(btnClick, 300000);
}
var btnClick = function () {
  console.log("yeah! Im clicker")
  return document.getElementById("formSubmit").click();
}

</script>
ddwnik вне форума Ответить с цитированием
Старый 20.11.2014, 21:07   #2
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

JavaScript code

Код:
var form = document.getElementsById("formsend");
if(form.length != 0) {
  form[0].submit();
}
С помощью JQuery это делается еще проще
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru
grominfo вне форума Ответить с цитированием
Старый 20.11.2014, 21:12   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

grominfo
Откуда lentgh у результата getElementById? Он не массив возвращает же вроде.
Видимо имелось в виду
Код:
var form = document.getElementById("formsend");
form.submit();
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 20.11.2014, 21:14   #4
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
grominfo
Откуда lentgh у результата getElementById? Он не массив возвращает же вроде.
Видимо имелось в виду
Код:
var form = document.getElementById("formsend");
form.submit();
Да, именно. Заработался
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru
grominfo вне форума Ответить с цитированием
Старый 20.11.2014, 21:20   #5
ddwnik
Пользователь
 
Регистрация: 02.09.2014
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
grominfo
Откуда lentgh у результата getElementById? Он не массив возвращает же вроде.
Видимо имелось в виду
Код:
var form = document.getElementById("formsend");
form.submit();
По нажатию на кнопку отправляется POST запрос.
Если кнопка была нажата, то автоматически нажимать на кнопку каждые 5 минут.
ddwnik вне форума Ответить с цитированием
Старый 20.11.2014, 21:28   #6
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

Код:
<form method="post" action="" id="formsend">
  <input type="button" name="formSubmit" onclick="start()" id="formSubmit" value="GO" />
</form>
<script>

function FormSend() {
    setTimeout(btnClick, 300000);
}
var btnClick = function () {
  console.log("yeah! Im clicker")
  var form = document.getElementById("formsend");
  form.submit();
}

</script>
Вроде бы так. Или вам принципиально именно нажимать кнопку по условию задачи?
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru
grominfo вне форума Ответить с цитированием
Старый 20.11.2014, 21:30   #7
ddwnik
Пользователь
 
Регистрация: 02.09.2014
Сообщений: 22
По умолчанию

Цитата:
Сообщение от ddwnik Посмотреть сообщение
Доброго времени суток.
Не работает код, в чем ошибка, подскажите?
Код HTML:
<form method="post" action="" id="formsend">
  <input type="button" name="formSubmit" onclick="start()" id="formSubmit" value="GO" />
</form>
<script>

function FormSend() {
    setTimeout(btnClick, 300000);
}
var btnClick = function () {
  console.log("yeah! Im clicker")
  return document.getElementById("formSubmit").click();
}

</script>
Извините, указал не правильный код...
События onclick нету.
Вот код:
Код HTML:
<form method="post" action="" id="formsend">
  <input type="button" name="formSubmit"  id="formSubmit" value="Погнали" />
</form>
<script>
function FormSend() {
    setTimeout(btnClick, 1000);
}
var form = document.getElementById("formsend");
form.submit();
</script>

<?php 

 if( isset( $_POST['formsumbit'] ) )
    {
       
        echo 'ACTIVE: ON';
    }

?>
Дело в том, что форма обновляется сама, и не происходит клика.
подскажите, как сделать, чтобы автонажатие на кнопку было после того, как мы на нее нажали?
Плюс ко всему, какой type использовать для отправки Post запроса в данном коде:
Код HTML:
<?php 

 if( isset( $_POST['formsumbit'] ) )
    {
       
        echo 'ACTIVE: ON';
    }

?>
button или submit?
ddwnik вне форума Ответить с цитированием
Старый 20.11.2014, 21:38   #8
grominfo
Форумчанин
 
Аватар для grominfo
 
Регистрация: 30.05.2011
Сообщений: 651
По умолчанию

При нынешнем подходе у вас не будет ничего отправляться, так как после обновления страницы произойдет сброс клиентской программы.

Варианты:
1. Нужно использовать Ajax
2. Хранить на сервере и передавать клиенту параметры для JS

Для отправки формы разумеется нужно использовать <input type="submit" />

Я извиняюсь. Не внимательно прочитал условие задачи. Вот так должно работать

Код:
<form method="post" action="" id="formsend">
  <input type="button" onclick="FormSend()" name="formSubmit"  id="formSubmit" value="Погнали" />
</form>
<script>
function PostForm(){
  var form = document.getElementById("formsend");
  form.submit();
}

function FormSend() {
    setTimeout(PostForm, 1000);
}

</script>
Создание, программирование и сопровождение сайтов любой сложности.
Изготовление программ на заказ.
Список услуг и портфолио на сайте www.andreygrom.ru

Последний раз редактировалось Stilet; 20.11.2014 в 21:58.
grominfo вне форума Ответить с цитированием
Старый 20.11.2014, 21:53   #9
ddwnik
Пользователь
 
Регистрация: 02.09.2014
Сообщений: 22
По умолчанию

Цитата:
Сообщение от grominfo Посмотреть сообщение
Я извиняюсь. Не внимательно прочитал условие задачи. Вот так должно работать

Код:
<form method="post" action="" id="formsend">
  <input type="button" onclick="FormSend()" name="formSubmit"  id="formSubmit" value="Погнали" />
</form>
<script>
function PostForm(){
  var form = document.getElementById("formsend");
  form.submit();
}

function FormSend() {
    setTimeout(PostForm, 1000);
}

</script>
Вот код с отправкой Post запроса:
Код HTML:
<form method="post"  id="formsend">
  <input type="button" onclick="FormSend()" name="formSubmit"  id="formSubmit" value="Погнали" />
</form>
<script>
function PostForm(){
  var form = document.getElementById("formsend");
  form.submit();
}

function FormSend() {
    setTimeout(PostForm, 300000);
}

</script>

<?php
   
    if( isset( $_POST['formsumbit'] ) )
   {
    $params = array(
'123' => 'true',
'321' => 'false',
'444' => 'fa05429f42771399c70e4aa800ae35e3' ,

);

$params1 = array(
'666' => 'true',
'444' => 'fight',
'111' => 'fa05429f42771399c70e4aa800ae35e3',

);

if ($ch = curl_init()) {
   curl_setopt($ch, CURLOPT_URL, 'http://site.com');
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
   curl_setopt($ch, CURLOPT_POST, true);
   curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
   curl_exec($ch);
   curl_close($ch);
}


if ($ch1 = curl_init()) {
   curl_setopt($ch1, CURLOPT_URL, 'http://site.com');
   curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch1, CURLOPT_FOLLOWLOCATION, false);
   curl_setopt($ch1, CURLOPT_POST, true);
   curl_setopt($ch1, CURLOPT_POSTFIELDS, $params1);
   curl_exec($ch1);
   curl_close($ch1);
}
    
}
?>
Если кнопка нажата, то post запрос(или нажатие) происходит каждые 5 минут, но при этом форма обновляться не должна, так как помимо этого будут еще кнопки, по которым например раз в 10 минут отправляться запрос.
Есть ли разница какой input? Button или submit?
Прошу помощи, и не кидайтесь пожалуйста тапками!
Всем успехов.

action нужен в форме или нет?

Последний раз редактировалось ddwnik; 20.11.2014 в 21:53. Причина: Обновление
ddwnik вне форума Ответить с цитированием
Старый 20.11.2014, 22:13   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Зачем тут формы вообще? Вы что-то странное делаете. Запихните свой РНР скрипт в cron и не надо никому ничего нажимать.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
авто клик по WebBrowser Dezik_axs Общие вопросы Delphi 12 06.05.2013 03:36
клик по кнопке STALERUM Работа с сетью в Delphi 0 16.09.2012 17:00
В TWebBrowser клик по кнопке wma57 Фриланс 3 27.07.2010 13:07
Twebbrowser - клик на кнопке cassidy Общие вопросы Delphi 2 10.05.2009 11:11
Клик мыши по кнопке SeregaKo Общие вопросы Delphi 10 30.04.2009 08:14