jQuery 設定
jQuery - 設定內容與屬性
#設定內容- text()、html() 以及val()
我們將使用前一章中的三個相同的方法來設定內容:
#text() - 設定或傳回所選元素的文本內容
html() - 設定或傳回所選元素的內容(包括HTML 標記)
val() - 設定或傳回表單欄位的值
下面的範例示範如何透過text()、html() 以及val() 方法來設定內容:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("#btn1").click(function(){ $("#test1").text("你好!"); }); $("#btn2").click(function(){ $("#test2").html("<b>你好!</b>"); }); $("#btn3").click(function(){ $("#test3").val("php.cn"); }); }); </script> </head> <body> <p id="test1">这是一个段落。</p> <p id="test2">这是另外一个段落。</p> <p>输入框: <input type="text" id="test3" value="php中文网"></p> <button id="btn1">设置文本</button> <button id="btn2">设置 HTML</button> <button id="btn3">设置值</button> </body> </html>
執行程式嘗試
text()、html() 以及val() 的回呼函數
上面的三個jQuery 方法:text()、 html() 以及val(),同樣擁有回呼函數。回調函數由兩個參數:被選元素清單中目前元素的下標,以及原始(舊的)值。然後以函數新值傳回您希望使用的字串。
下面的範例示範帶有回呼函數的text() 和html():
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("#btn1").click(function(){ $("#test1").text(function(i,origText){ return "旧文本: " + origText + " 新文本: Hello world! (index: " + i + ")"; }); }); $("#btn2").click(function(){ $("#test2").html(function(i,origText){ return "旧 html: " + origText + " 新 html: Hello <b>world!</b> (index: " + i + ")"; }); }); }); </script> </head> <body> <p id="test1">这是一个有 <b>粗体</b> 字的段落。</p> <p id="test2">这是另外一个有 <b>粗体</b> 字的段落。</p> <button id="btn1">显示 新/旧 文本</button> <button id="btn2">显示 新/旧 HTML</button> </body> </html>
執行程式嘗試
設定屬性- attr()
jQuery attr() 方法也用於設定/改變屬性值。
下面的範例示範如何改變(設定)連結中href 屬性的值:
#實例##
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("button").click(function(){ $("#php").attr("href","http://www.baidu.com/"); }); }); </script> </head> <body> <p><a href="http://www.php.cn" id="php">php中文网</a></p> <button>修改 href 值</button> <p>点击按钮修改后,可以点击链接查看链接地址是否变化。</p> </body> </html>執行程序嘗試一下
attr() 方法也允許您同時設定多個屬性。 下面的範例示範如何同時設定 href 和 title 屬性:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("button").click(function(){ $("#php").attr({ "href" : "http://www.baidu.com", "title" : "baidu" }); }); }); </script> </head> <body> <p><a href="http://www.php.cn" id="php">php中文网</a></p> <button>修改 href 和 title</button> <p>点击按钮修改后,可以查看 href 和 title 是否变化。</p> </body> </html>執行程式嘗試
attr() 的回呼函數
#jQuery 方法 attr(),也提供回呼函數。回調函數由兩個參數:被選元素清單中目前元素的下標,以及原始(舊的)值。然後以函數新值傳回您希望使用的字串。
下面的範例示範帶有回呼函數的attr() 方法:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script> <script> $(document).ready(function(){ $("button").click(function(){ $("#php").attr("href", function(i, origValue){ return origValue + "/course.html"; }); }); }); </script> </head> <body> <p><a href="http://www.php.cn" id="php">php中文网</a></p> <button>修改 href 值</button> <p>点击按钮修改后,可以点击链接查看 href 属性是否变化。</p> </body> </html>
執行程式嘗試