jQuery - изменить текст кнопки CSS3?

0

Я сделал кнопку CSS3, которая не использует свойство value, а просто текст.

http://jsfiddle.net/vVsAn/1789/

Это немного проблема, поскольку у меня есть скрипт, который меняет value из "Скрыть" в "Показать".

Но изменение значения здесь не очень помогает.

JQuery:

jQuery(document).ready(function(){
        jQuery('#hideshow').on('click', function(event) {        
             jQuery('#lang').toggle('show');
            debugger
            if($('#hideshow').val()=="Hide")
                $('#hideshow').val("Show")
                else
                $('#hideshow').val("Hide")    
        });
    });
Теги:

5 ответов

2
Лучший ответ

Вы должны использовать текстовую функцию.

jQuery(document).ready(function(){
        jQuery('#hideshow').on('click', function(event) {        
             jQuery('#lang').toggle('show');
            debugger
            if($('#hideshow').text()=="Hide")
                $('#hideshow').text("Show")
                else
                $('#hideshow').text("Hide")    
        });
    });

Вот jsFiddle.

1

Использовать .text

if($('#hideshow').text()=="Hide")
                    $('#hideshow').text("Show")
                    else
                    $('#hideshow').text("Hide")    

http://jsfiddle.net/vVsAn/1789/

0
 try this one:
 $(document).ready(function(){
            $('#hideshow').on('click', function(event) {        
                 $('#lang').toggle('show');
                 if($('#hideshow').attr("value")=="Hide"){
                    $('#hideshow').attr("value","Show");
                 }else{
                    $('#hideshow').attr("value","Hide");
                 }  
            });
        });
0

Как сказали все,.text() будет правильным выбором, но я просто позволил себе сделать некоторую оптимизацию ;-)

jQuery(document).ready(function($){ //  if you use .ready() function, you should go ahead and use the $ alias
    var $button = $('#hideshow'), // try to store th jquery objects if you use them more than once
        textWhen = {"hidden": "Show", "visible": "Hide"}; // Store the text will be easier to maintain
    $button.on('click', function(event) {        
        $('#lang').toggle('show');
        if($button.text()==textWhen.hidden)
            $button.text(textWhen.visible)
        else
            $button.text(textWhen.hidden)
    });
});

http://jsfiddle.net/vVsAn/1801/

до свидания

0

Попробуйте свойство jquery '.text()'. Вот обновленный код: http://jsfiddle.net/myTerminal/vVsAn/1794/

if($('#hideshow').text()=="Hide")
  $('#hideshow').text("Show");
else
   $('#hideshow').text("Hide");

Ещё вопросы

Сообщество Overcoder
Наверх
Меню