21

在 jquery这个问题中看到Toggling button text 之后,我尝试在我的情况下重新创建它,但似乎无法让它工作。

这是我所做的一个小提琴:http: //jsfiddle.net/V4u5X/

$('.SeeMore2').click(function(){
    var $this = $(this);
    $this.toggleClass('SeeMore');
    if($this.hasClass('.SeeMore2')){
        $this.text('See More');         
    } else {
        $this.text('See Less');
    }
});

它似乎只运行一次 if 语句。我错过了什么?

4

6 回答 6

45
$('.SeeMore2').click(function(){
    var $this = $(this);
    $this.toggleClass('SeeMore2');
    if($this.hasClass('SeeMore2')){
        $this.text('See More');         
    } else {
        $this.text('See Less');
    }
});

这应该这样做。您必须确保切换正确的类并取出“。” 来自 hasClass

http://jsfiddle.net/V4u5X/2/

于 2013-10-14T17:05:05.007 回答
7

试试这个,这个 javascript 代码可以随时更改文本以单击按钮。http://jsfiddle.net/V4u5X/2/

html代码

<button class="SeeMore2">See More</button>

javascript

$('.SeeMore2').click(function(){
        var $this = $(this);
        $this.toggleClass('SeeMore2');
        if($this.hasClass('SeeMore2')){
            $this.text('See More');         
        } else {
            $this.text('See Less');
        }
    });
于 2016-08-12T08:53:57.137 回答
2

它的工作短代码

$('.SeeMore2').click(function(){ var $this = $(this).toggleClass('SeeMore2'); if($(this).hasClass('SeeMore2')) { $(this).text('See More');
} else { $(this).text('See Less'); } });

于 2014-07-02T07:06:32.983 回答
2

在 HTML 中:

<button type="button" id="AddButton" onclick="AddButtonClick()" class="btn btn-success btn-block ">Add</button> 

在 Jquery 中编写这个函数:

    function AddButtonClick(){ 
      //change text from add to Update
      $("#AddButton").text('Update');
    }
于 2018-09-10T08:21:22.383 回答
1

这应该适合你:

    $('.SeeMore2').click(function(){
        var $this = $(this);
        $this.toggleClass('SeeMore2');
        if($this.hasClass('SeeMore2')){
            $this.text('See More');         
        } else {
            $this.text('See Less');
        }
});
于 2013-10-14T17:05:36.753 回答
0

采用 :

$("button").click(function(){
  $(this).html("the new text");
});
于 2021-04-29T23:58:52.930 回答