JQuery - 使用on()切换按钮的文本,同时切换另一个对象

时间:2014-02-27 15:36:33

标签: jquery jquery-on

HTML是一个按钮列表,可以在关闭时切换元素。

我想更改按钮上的文字,从“显示”更改为“隐藏”。我希望通过complete()回调来完成它。如何访问被点击的元素?

我有这个JS代码:

  $("body").on("click", ".selector", function(eve) {
     $(".selector", $(this).parent()).toggle(function(){
        $(/*here comes the element that was clicked*/).text(
            function(i,text){
                return text == "show" ? "hide" : "show"; 
            }
        );
     });
  });

2 个答案:

答案 0 :(得分:3)

存储对this

的引用
$("body").on("click", ".selector", function(eve) {
 var that = $(this);
 $(".selector", $(this).parent()).toggle(function(){
    that.text(
        function(i,text){
            return text == "show" ? "hide" : "show"; 
        }
    );
 });
});

答案 1 :(得分:0)

您可以使用eventevent.currentTarget属性

$("body").on("click", ".selector", function (eve) {
    $(this).parent().find(".selector").toggle(function () {
        $(eve.currentTarget).text(function (i, text) {
            return text == "show" ? "hide" : "show";
        });
    });
});