2016-03-09 3 views
0

Я использую jQuery для изменения текста на элемент с щелчком. Но как изменить текст на исходный текст?Сменить текст из текста() на исходный текст

$(".myClass").click(function() { 
     $(this).text("You clicked me!"); 
    }); 

Я хочу быть в состоянии нажать на .myClass снова и получить оригинальный текст ... есть что-то сравнимо с «тумблер» с text()?

+2

Вы можете либо сохранить первоначальный текст, или показать/скрыть два блока текста. Нет встроенной функции, чтобы делать то, что вы хотите. – j08691

ответ

1

Я написал расширение, чтобы решить эту проблему. Это всего лишь несколько строк:

jQuery.fn.extend({ 
    toggleText: function(stateOne, stateTwo) { 
     return this.each(function() { 
      stateTwo = stateTwo || ''; 
      $(this).text() !== stateTwo && stateOne ? $(this).text(stateTwo) : $(this).text(stateOne); 
     }); 
    } 
}); 

Использование:

$('.myClass').on('click', function() { 
    $(this).toggleText('show', 'hide'); //Toggles from hide to show 
}); 
0

Сохраните исходный текст в переменной, затем перейдите между ними.

0

Как только вы измените текст поля, исходный текст исчез. Вы должны где-то сохранить это значение. Может работать скрытое поле или переменная. Зависит от того, когда вы хотите вернуться к исходному тексту.

Смежные вопросы