Как я заменяю jQueryUI текст кнопки?

У меня есть кнопка, которую я использую с jQueryUI somethink как (упрощенный).

<button id="mybutton">Play<button>
<script>
$("#mybutton").button().toggle(
    function(){
       $(this).text('Stop');
    },
    function(){
       $(this).text('Start');
    },
);
</script>

Этот код повреждает способ, которым смотрит кнопка, потому что при превращении его в виджет кнопки, существует новый промежуток, добавленный в кнопке. Таким образом, я изменяю значение кнопки как это теперь

$(this).find('span').text('Stop');

Это - hacky, потому что я не могу рассматривать кнопку как черный квадрат больше и иметь для вхождения.

Существует ли очевидный способ, чтобы сделать это?

31
задан Andrei R 19 April 2010 в 07:55
поделиться

3 ответа

Может быть, теперь вы могли бы использовать параметр label кнопки пользовательского интерфейса jQuery?

$("#mybutton").button().toggle(function() {
   $(this).button('option', 'label', 'Stop');
}, function() {
   $(this).button('option', 'label', 'Start');
});

Предварительный просмотр jsbin здесь

63
ответ дан 27 November 2019 в 21:53
поделиться

Вы можете использовать метод .button ("обновить") после изменения текста.

$("#mybutton").button().toggle(
    function(){
       $(this).text('Stop').button("refresh");
    },
    function(){
       $(this).text('Start').button("refresh");
    },
);

http://jqueryui.com/demos/button/#method-refresh

6
ответ дан 27 November 2019 в 21:53
поделиться

Всегда ли идентификатор кнопки myButton ? Если да, то просто используйте

$ ("# myButton"). Text ('Stop');

0
ответ дан 27 November 2019 в 21:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: