2013-02-23 106 views
0

我經常在這裏找到幫助,我做了我的研究,並且通過任何邏輯,這兩種方式都可以工作,但它沒有。 當我點擊#1或#2時,文本在另一個元素中被切換,但它不會更改它自己的html或文本,我不介意。我喜歡改變2個文本點擊元素id =「1」和id =「2」,以及我在id =「rita」和id =「filip」中做。 最有可能它的簡單,但是,即時通訊卡,在此先感謝:)在2個文本之間切換JQuery

$(document).ready(function() { 
$("#rita").hide(); 
$("#filip").hide(); 

$("#1").click(function() { 
    $("#rita").toggle(200); 
    $("#1").toggle( function(){ 
         $("this").html("-Sveta Rita");}, 
         function(){ 
         $("this").html("+Sveta Rita");} 
        ); 

    }); 

$("#2").click(function() { 
    var originalValue = $(this).val(); 
    $(this).val(originalValue == '-Sveti Filip' ? '+Sveti Filip' : '-Sveti Filip'); 

    $("#filip").toggle(200); 



    }); 

}); 

回答

1

toggle()版本切換兩大功能已被棄用,但在text()使用函數調用和切換返回的文本應該工作:

$(document).ready(function() { 
    $("#rita").hide(); 
    $("#filip").hide(); 

    $("#a1").on('click', function() { 
     $("#rita").toggle(200); 
     $(this).text(function() { 
      var current_value = $.trim($(this).text()); 
      var return_value = ""; 

      if (current_value == '-Sveta Rita') { 
       return_value = '+Sveta Rita'; 
      }else{ 
       return_value = '-Sveta Rita'; 
      } 

      return return_value; 
     }); 
    }); 

    $("#a2").on('click', function() { 
     $("#filip").toggle(200); 
     $(this).text(function() { 
      return $.trim($(this).text()) == '-Sveti Filip' ? '+Sveti Filip' : '-Sveti Filip'; 
     }); 
    }); 
}); 

FIDDLE

此外,ID的should'nt只包含一個數字!

+0

非常感謝它......如果我要求你用第一種方式而不是第二種方式寫它,我會提出2種方法解決上述問題。對不起,如果困擾,並感謝您的迴應。 我不明白secodn方式jet雖然; D – 2013-02-23 21:27:20

+0

第一種方式,使用toggle()切換兩個函數,已被棄用,並且該版本的切換實際上在jQuery 1.9中被刪除,所以你不應該使用它。我改變了上面的代碼以包含一個帶有if/else的例子,這更容易理解,但它們都做了完全相同的事情,最後一個例子中的三元語句只寫得更短。 – adeneo 2013-02-23 21:32:58

+0

Dats更喜歡它,所有你得到的是我的感謝,雖然,謝謝:) – 2013-02-23 21:33:37