Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Програмное нажатие на кнопку (https://javascript.ru/forum/misc/33483-programnoe-nazhatie-na-knopku.html)

djonA 25.11.2012 03:21

Програмное нажатие на кнопку
 
Подскажите, есть 2 кода, которые отлично выполняются и работаю, но нужно что бы в каждом из кодов, после выполнения фунции, еще очищалась input форма.

Вот 2 кода:

$(".ac_results li").live("mousedown", function(){
        window.location=$(this).find("a").attr("href"); return false;
    });


$("#searchstring").keyup(function(e) {
  if (e.which == 13) {  var link = $(this).val().match(/href='([^']+)/);
	    location.href =link[1];  }; 
});



Думал как вариант создать кнопку:
<input id="myButton" name="myButton" type="button" value="Reset Form" onClick="this.form.reset()" />

спрятать ее и потом в каждом конкретном случае програмно нажать на нее.

Но не получается, или может Вы подскажите еще какойто более простой вариант???

ruslan_mart 25.11.2012 05:58

Может document.getElementById('myButton').click();

djonA 25.11.2012 11:46

Цитата:

Сообщение от Ruslan_xDD (Сообщение 217697)
Может document.getElementById('myButton').click();

это куда добавить? прямо в мои функции?

что бы было прияерно так:
$("#searchstring").keyup(function(e) {
  if (e.which == 13) {  var link = $(this).val().match(/href='([^']+)/);
        location.href =link[1]; 
document.getElementById('myButton').click(); }; 
});

9xakep 25.11.2012 12:16

<input type='button' id='but' onclick='func()'>

<script>
function func() { alert('do') }
document.getElementById('but').click()
</script>

djonA 25.11.2012 12:19

Да это я понял, только мне надо что бы оно срабатывала после выполнения моего скрипта, то есть после вот этого:
$("#searchstring").keyup(function(e) {
	  if (e.which == 13) {  var link = $(this).val().match(/href='([^']+)/);
	        location.href =link[1];  };
	});


сразу срабатывало вот это:
function func() { alert('do') }
	document.getElementById('but').click()

Hoshinokoe 25.11.2012 12:24

Цитата:

Сообщение от djonA (Сообщение 217691)
Думал как вариант создать кнопку:
<input id="myButton" name="myButton" type="button" value="Reset Form" onClick="this.form.reset()" />

спрятать ее и потом в каждом конкретном случае програмно нажать на нее.
Но не получается, или может Вы подскажите еще какойто более простой вариант???

Зачем создавать дополнительную кнопку, если в каждом из блоков можно сразу добавить код очистки формы ???

9xakep 25.11.2012 12:27

djonA,
я правильно понял, что ты перезагружаешь страницу, а потом хочешь, что бы твоя функция там работала? О_о

djonA 25.11.2012 12:34

нет я хочу что бы после срабатывания функции, очищалось текстовое поле.

Так как там вставляется текст, а мне нужно что бы оно оставалось пустым

Hoshinokoe 25.11.2012 13:20

djonA,

Добавь в конец функции
$('#input').val('');

djonA 25.11.2012 16:55

тут отлично срабатывает:
$("#searchstring").keyup(function(e) {
  if (e.which == 13) {  var link = $(this).val().match(/href='([^']+)/);
	    location.href =link[1];$('#searchstring').val('');  }; 
});


а вот тут нет, не очищает форму после выполнения функции:
$(".ac_results li").live("mousedown", function(){
        window.location=$(this).find("a").attr("href"); $('#searchstring').val('');
    });


Часовой пояс GMT +3, время: 13:42.