Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   JQuery при клике получить с сбросить значение (https://javascript.ru/forum/dom-window/52998-jquery-pri-klike-poluchit-s-sbrosit-znachenie.html)

soltx 16.01.2015 16:42

JQuery при клике получить с сбросить значение
 
Подскажите метод при клике добавить значение при повторном сбросить
$(".test").click(function (){
     var text = 'бла бла бла';
     $( "input" ).val(text);

soltx 16.01.2015 19:07

пока реализовал так:

var i = 1;
i = i + 1;
 if (i % 2 == 0) {
$("input").val(text);
} else {
$("input").val('');
}

рони 16.01.2015 19:38

soltx,
записать заранее в атрибут data нужный текст и сравнивать при клике

danik.js 17.01.2015 00:12

<label><input class="test" type="checkbox" /> Добавить/сбросить</label>
<input type="text" />
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(".test").click(function (){
     var text = 'бла бла бла';
     $( "input" ).val(this.checked ? text : '');
});
</script>

soltx 17.01.2015 09:09

спс за примеры

danik.js 17.01.2015 09:26

Цитата:

Сообщение от soltx
пока реализовал так:

Для всего двух состояний это лишнее. Проще так:

var checked = false;
...
checked = !checked;
$('input').val(checked ? text : '');


Мой пример с чекбоксом - тоже самое, только там переменная checked хранится в чекбоксе и меняется браузером автоматически.

soltx 17.01.2015 15:59

Цитата:

Сообщение от danik.js (Сообщение 351801)
Для всего двух состояний это лишнее.
Мой пример с чекбоксом - тоже самое, только там переменная checked хранится в чекбоксе и меняется браузером автоматически.

абсолютно согласен
сделал так, исходя из твоего примера

$('input').val() == '' ? $('input').val(text) : $('input').val('')

ruslan_mart 17.01.2015 16:26

soltx, как минимум так:

if($('input').val() == '') $('input').val(text);


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