Програмное нажатие на кнопку
Подскажите, есть 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()" /> спрятать ее и потом в каждом конкретном случае програмно нажать на нее. Но не получается, или может Вы подскажите еще какойто более простой вариант??? |
Может 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(); }; }); |
<input type='button' id='but' onclick='func()'> <script> function func() { alert('do') } document.getElementById('but').click() </script> |
Да это я понял, только мне надо что бы оно срабатывала после выполнения моего скрипта, то есть после вот этого:
$("#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() |
Цитата:
|
djonA,
я правильно понял, что ты перезагружаешь страницу, а потом хочешь, что бы твоя функция там работала? О_о |
нет я хочу что бы после срабатывания функции, очищалось текстовое поле.
Так как там вставляется текст, а мне нужно что бы оно оставалось пустым |
djonA,
Добавь в конец функции $('#input').val(''); |
тут отлично срабатывает:
$("#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(''); }); |
djonA,
Исправь во втором случае: $(".ac_results li").live("mousedown", function(){ $('#searchstring').val(''); window.location=$(this).find("a").attr("href"); }); |
попробовал, не очищает строку.
Может можно еще какие то варианты использовать??? |
|
Цитата:
То есть добавить либо reset в конце функции, либо вывод пустой строчки в функции. Но это должно происходить именно после клика на ссылку. То есть вопрос как в этот код добавить очистку формы от текста: $(".ac_results li").live("mousedown", function(){ window.location=$(this).find("a").attr("href"); }); |
тестовый пример с возможностью запуска [html run]
|
Это сложно... если прямо на сайте покажу так пойдет?
|
пойдёт
|
Сайт в лс
если в поиске начать писать что-то латинскими буквами, скажем WLX, то предложатся варианты, если мы там выберем любой вариант и нажмем на него кнопкой мышки, то он его вначале вставит в текстовое поле, а потом сделает переход по ссылке. Мне надо что бы он не вставлял его в текстовое поле, то есть оставлял ее пустой, при нажатии мышкой на какой то вариант. Ну или хотя бы очищал ее после всех этих манипуляций, можно пример посмотреть если на один из вариантов нажать кнопкой enter. Оно вначале вставится потом сразу очиститься а потом уже произойдет переход по ссылке. |
очевидно, стоит использовать объекты с lavel и value вместо массива ссылок, либо назначать обработчики на события select, close или change
link |
Часовой пояс GMT +3, время: 07:20. |