簡體   English   中英

jQuery 101-更改文本值

[英]JQuery 101 - Changing text value

我有一個鏈接來隱藏/顯示一些文本:

<a href="javascript:void(0);" id="toggle_status_history">show/hide history<a/>

相應的JavaScript如下所示:

$(document).ready(function() {
  $('#toggle_status_history').click(function() {
    if ($('#status_history').is(":hidden")) {
      $('#status_history').slideDown("fast");
    } else {
      $('#status_history').slideUp("fast");
    }
  });

效果很好,但我也想切換超鏈接文本。 我需要怎么做才能修改“顯示/隱藏歷史記錄”以顯示“隱藏歷史記錄”(如果當前顯示)或“顯示歷史記錄”(如果當前隱藏)? 像這樣..?

$(document).ready(function() {
  $('#toggle_status_history').click(function() {
    if ($('#status_history').is(":hidden")) {
      $('#status_history').slideDown("fast");
      // SOMETHING HERE TO SET TEXT TO 'HIDE HISTORY'
    } else {
      $('#status_history').slideUp("fast");
      // SOMETHING HERE TO SET TEXT TO 'SHOW HISTORY'
    }
  });

免責聲明:我對JQuery的使用經驗不到一個小時(自90年代末以來我就沒有使用過JavaScript)-我只是想為自己的網站修改代碼示例。 我看過了toggle()和replaceWith()函數的API,但沒有使其正常工作。 谷歌搜索和RTFM'ing到目前為止對我沒有幫助。

  $('#status_history').text("Whatever you want it to say");

看一下jQuery文檔 他們有一個很好的文檔,其中舉例說明了所有內容。 例如, .text(str); 功能在manipulation之下。

$('#toggle_status_history').text("Show history");

$('#status_history').text("Hide/Show History"); 是您所需要的。 更好的方法是使用jQuery提供的toggle方法,它接受一系列函數,這些函數將在每次單擊時循環。 所以你不需要做的is(':hidden')

$('#status_history').val("bla bla bla..");

試試這個... fn.val()獲取輸入,選擇或textarea的值或文本的值;)fn.val(newValue)設置新值;)

$(document).ready(function() {
  $('#toggle_status_history').click(function() {
   $('#status_history').toggle('slow')
   $("#toggle_status_history").text(($("#toggle_status_history").text()=='show')?'hide':'show');
}
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM