轉載JQuery 擷取設定值,添加元素詳解

來源:互聯網
上載者:User

標籤:

轉載原地址 http://www.cnblogs.com/0201zcr/p/4782476.html

jQuery 擷取內容和屬性jQuery DOM 操作

jQuery 中非常重要的部分,就是操作 DOM 的能力。

jQuery 提供一系列與 DOM 相關的方法,這使訪問和操作元素和屬性變得很容易。

提示:DOM = Document Object Model(文件物件模型)

獲得內容 - text()、html() 以及 val()

三個簡單實用的用於 DOM 操作的 jQuery 方法:

  • text() - 設定或返回所選元素的常值內容
  • html() - 設定或返回所選元素的內容(包括 HTML 標籤)
  • val() - 設定或返回表單欄位的值

下面的例子示範如何通過 jQuery text() 和 html() 方法來獲得內容:

執行個體
$("#btn1").click(function(){  alert("Text: " + $("#test").text());});$("#btn2").click(function(){  alert("HTML: " + $("#test").html());});

下面的例子示範如何通過 jQuery val() 方法獲得輸入欄位的值:

執行個體
$("#btn1").click(function(){  alert("Value: " + $("#test").val());});
擷取屬性 - attr()

jQuery attr() 方法用於擷取屬性值。

下面的例子示範如何獲得連結中 href 屬性的值:

執行個體
$("button").click(function(){  alert($("#w3s").attr("href"));});

jQuery 設定內容和屬性

設定內容 - text()、html() 以及 val()

我們將使用前一章中的三個相同的方法來設定內容:

  • text() - 設定或返回所選元素的常值內容
  • html() - 設定或返回所選元素的內容(包括 HTML 標籤)
  • val() - 設定或返回表單欄位的值

下面的例子示範如何通過 text()、html() 以及 val() 方法來設定內容:

執行個體
$("#btn1").click(function(){  $("#test1").text("Hello world!");});$("#btn2").click(function(){  $("#test2").html("<b>Hello world!</b>");});$("#btn3").click(function(){  $("#test3").val("Dolly Duck");});
text()、html() 以及 val() 的回呼函數

  上面的三個 jQuery 方法:text()、html() 以及 val(),同樣擁有回呼函數。回呼函數由兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然後以函數新值返回您希望使用的字串。

  下面的例子示範帶有回呼函數的 text() 和 html():

執行個體
$("#btn1").click(function(){  $("#test1").text(function(i,origText){    return "Old text: " + origText + " New text: Hello world!    (index: " + i + ")";  });});$("#btn2").click(function(){  $("#test2").html(function(i,origText){    return "Old html: " + origText + " New html: Hello <b>world!</b>    (index: " + i + ")";  });});
設定屬性 - attr()

  jQuery attr() 方法也用於設定/改變屬性值。

  下面的例子示範如何改變(設定)連結中 href 屬性的值:

執行個體
$("button").click(function(){  $("#w3s").attr("href","http://www.w3school.com.cn/jquery");});

 attr() 方法也允許您同時設定多個屬性。

  下面的例子示範如何同時設定 href 和 title 屬性:

執行個體
$("button").click(function(){  $("#w3s").attr({    "href" : "http://www.w3school.com.cn/jquery",    "title" : "W3School jQuery Tutorial"  });});
attr() 的回呼函數

  jQuery 方法 attr(),也提供回呼函數。回呼函數由兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然後以函數新值返回您希望使用的字串。

  下面的例子示範帶有回呼函數的 attr() 方法:

執行個體
$("button").click(function(){  $("#w3s").attr("href", function(i,origValue){    return origValue + "/jquery";  });});
jQuery - 添加元素

  通過 jQuery,可以很容易地添加新元素/內容。

添加新的 HTML 內容

我們將學慣用於添加新內容的四個 jQuery 方法:

  • append() - 在被選元素的結尾插入內容
  • prepend() - 在被選元素的開頭插入內容
  • after() - 在被選元素之後插入內容
  • before() - 在被選元素之前插入內容
jQuery append() 方法

  jQuery append() 方法在被選元素的結尾插入內容。

執行個體
$("p").append("Some appended text.");
jQuery prepend() 方法

 jQuery prepend() 方法在被選元素的開頭插入內容。

執行個體

$("p").prepend("Some prepended text.");
通過 append() 和 prepend() 方法添加若干新元素

  在上面的例子中,我們只在被選元素的開頭/結尾插入文本/HTML。

  不過,append() 和 prepend() 方法能夠通過參數接收無限數量的新元素。可以通過 jQuery 來產生文本/HTML(就像上面的例子那樣),或者通過 JavaScript 代碼和 DOM 元素。

  在下面的例子中,我們建立若干個新元素。這些元素可以通過 text/HTML、jQuery 或者 JavaScript/DOM 來建立。然後我們通過 append() 方法把這些新元素追加到文本中(對 prepend() 同樣有效):

執行個體
function appendText(){var txt1="<p>Text.</p>";               // 以 HTML 建立新元素var txt2=$("<p></p>").text("Text.");   // 以 jQuery 建立新元素var txt3=document.createElement("p");  // 以 DOM 建立新元素txt3.innerHTML="Text.";$("p").append(txt1,txt2,txt3);         // 追加新元素}
jQuery after() 和 before() 方法

  jQuery after() 方法在被選元素之後插入內容。

  jQuery before() 方法在被選元素之前插入內容。

執行個體
$("img").after("Some text after");$("img").before("Some text before");
通過 after() 和 before() 方法添加若干新元素

  after() 和 before() 方法能夠通過參數接收無限數量的新元素。可以通過 text/HTML、jQuery 或者 JavaScript/DOM 來建立新元素。

  在下面的例子中,我們建立若干新元素。這些元素可以通過 text/HTML、jQuery 或者 JavaScript/DOM 來建立。然後我們通過 after() 方法把這些新元素插到文本中(對 before() 同樣有效):

執行個體
function afterText(){var txt1="<b>I </b>";                    // 以 HTML 建立新元素var txt2=$("<i></i>").text("love ");     // 通過 jQuery 建立新元素var txt3=document.createElement("big");  // 通過 DOM 建立新元素txt3.innerHTML="jQuery!";$("img").after(txt1,txt2,txt3);          // 在 img 之後插入新元素}

 

 

 

 

 

 

 

轉載JQuery 擷取設定值,添加元素詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.