JavaScript(19)jQuery HTML 获取和设置内容和属性

jQuery HTML
jQuery 拥有可操作 HTML 元素和属性的强大方法。

jQuery DOM 操作
jQuery 中非常重要的部分,就是操作 DOM 的能力。jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。
提示:DOM = Document Object Model(文档对象模型)
DOM 定义访问 HTML 和 XML 文档的标准:“W3C 文档对象模型独立于平台和语言的界面,允许程序和脚本动态访问和更新文档的内容、结构以及样式。”


jQuery HTML - 获得内容和属性

获得内容 - text()、html() 以及 val()
三个简单实用的用于 DOM 操作的 jQuery 方法:
  • text() - 设置或返回所选元素的文本内容
  • html() - 设置或返回所选元素的内容(包括 HTML 标记)
  • val() - 设置或返回表单字段的值

通过 jQuery text() 和 html() 方法来获得内容:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("#btn1").click(function(){  
  2.   alert("Text: " + $("#test").text());  
  3. });  
  4. $("#btn2").click(function(){  
  5.   alert("HTML: " + $("#test").html());  
  6. });  

通过 jQuery val() 方法获得输入字段的值:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("#btn1").click(function(){  
  2.   alert("Value: " + $("#test").val());  
  3. });  

获取属性 - attr()
jQuery attr() 方法用于获取属性值。

获得链接中 href 属性的值:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("button").click(function(){  
  2.   alert($("#Attr").attr("href"));  
  3. });  

jQuery HTML - 设置内容和属性

设置内容 - text()、html() 以及 val()

还是上面提过的3个方法( 区别在于参数):
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("#btn1").click(function(){  
  2.   $("#test1").text("Hello world!");  
  3. });  
  4. $("#btn2").click(function(){  
  5.   $("#test2").html("<b>Hello world!</b>");  
  6. });  
  7. $("#btn3").click(function(){  
  8.   $("#test3").val("Dolly Duck");  
  9. });  

text()、html() 以及 val() 的回调函数
text()、html() 以及 val(),拥有回调函数。回调函数由两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。
然后以函数新值返回希望使用的字符串。

带有回调函数的 text() 和 html():
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("#btn1").click(function(){  
  2.   $("#test1").text(function(i,origText){  
  3.     return "Old text: " + origText + " New text: Hello world!  
  4.     (index: " + i + ")";  
  5.   });  
  6. });  
  7.   
  8. $("#btn2").click(function(){  
  9.   $("#test2").html(function(i,origText){  
  10.     return "Old html: " + origText + " New html: Hello <b>world!</b>  
  11.     (index: " + i + ")";  
  12.   });  
  13. });  

设置属性 - attr()
jQuery attr() 方法也用于设置/改变属性值。

改变(设置)链接中 href 属性的值:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("button").click(function(){  
  2.   $("#w3s").attr("href","http://www.csdn.net");  
  3. });  

attr() 方法也允许同时设置多个属性。
同时设置 href 和 title 属性:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $(document).ready(function(){  
  2.   $("button").click(function(){  
  3.     $("#csdn").attr({  
  4.       "href" : "http://www.csdn.net",  
  5.       "target" : "_blank"  
  6.     });  
  7.   });  
  8. });  

attr() 的回调函数
回调函数有两个参数:被选元素列表中当前元素的下标,以及原始(旧的)值。然后以函数新值返回希望使用的字符串。
带有回调函数的 attr() 方法:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. $("button").click(function(){  
  2.   $("#csdn").attr("href"function(i,origValue){  
  3.     return origValue + "/u014194675";   
  4.   });  
  5. });  
提示:
[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <p><a href="http://blog.csdn.net" id="csdn">csdn</a></p>  
哈哈~

本来想学到这里就结束了,但是看看上面都是不完整的例子,练习起来可能不太方便,但是如果贴好几个小例子,看起来会很乱吧。。。于是我总结了一个大例子。。。顺便可以放在我的网页中。。。。。。图片不想贴了。。。。。。附个链接吧,点击打开链接

[javascript] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <!DOCTYPE html>  
  2. <html>  
  3.   
  4. <head>  
  5. <script src="jquery-1.11.1.js"></script>  
  6. <script>  
  7. $(document).ready(function(){  
  8.   
  9.   $("#btn1").click(function(){  
  10.     alert("Text: " + $("#test1").text());  
  11.   });  
  12.   $("#btn2").click(function(){  
  13.     alert("HTML: " + $("#test1").html());  
  14.   });  
  15.   $("#btn3").click(function(){  
  16.     alert("Value: " + $("#test2").val());  
  17.   });  
  18.   
  19.   $("#btn4").click(function(){  
  20.     $("#test1").text("可以呀");  
  21.   });  
  22.   $("#btn5").click(function(){  
  23.     $("#test1").html("<b>真的么</b>");  
  24.   });  
  25.   $("#btn6").click(function(){  
  26.     $("#test2").val("周董");  
  27.   });  
  28.   
  29.   $("#btn7").click(function(){  
  30.     $("#test1").text(function(i, origText){  
  31.       return (origText + " 应该可以吧");  
  32.     });  
  33.   });  
  34.   $("#btn8").click(function(){  
  35.     $("#test1").html(function(i, origText){  
  36.         return (origText + " <b>好的</b>");  
  37.     });  
  38.   });  
  39.   $("#btn9").click(function(){  
  40.     $("#test2").val(function(i, origText){  
  41.       return (origText + " Jay Chou");  
  42.     });  
  43.   });  
  44.   
  45.   $("#button1").click(function(){  
  46.     alert($("#xyxy").attr("href"));  
  47.   });  
  48.   $("#button2").click(function(){  
  49.     $("#xyxy").attr({  
  50.       "href" : "http://www.suxin.yeyou.eu",  
  51.       "target" : "view_frame"  
  52.     });  
  53.   });  
  54.   $("#button3").click(function(){  
  55.     $("#xyxy").attr("href"function(i,origValue){  
  56.       return origValue + "/answer.html";   
  57.     });  
  58.   });  
  59.   
  60. });  
  61. </script>  
  62. </head>  
  63.   
  64. <body>  
  65.   
  66. <p id="test1" value="csdn">我可以继续用<b>杰伦</b>来举例子么</p>  
  67. <button id="btn1">显示文本</button>  
  68. <button id="btn2">显示 HTML</button>  
  69.   
  70. <button id="btn4">设置文本</button>  
  71. <button id="btn5">设置 HTML</button>  
  72.   
  73. <button id="btn7">回调函数设置文本</button>  
  74. <button id="btn8">回调函数设置 HTML</button>  
  75.   
  76. <p>姓名:<input type="text" id="test2" value="周杰伦"></p>  
  77. <button id="btn3">显示 value</button>  
  78. <button id="btn6">设置 value</button>  
  79. <button id="btn9">回调函数设置 value</button>  
  80.   
  81. <p><a href="http://www.suxin.yeyou.eu/test.html" target="_blank" id="xyxy">自己的网页</a></p>  
  82. <button id="button1">获取 href</button>  
  83. <button id="button2">设置 href 多个属性</button>  
  84. <button id="button3">回调函数设置 href </button>  
  85. <p>先点击链接;然后点击button2,再点击链接;之后再点击button3,再点击链接。</p>  
  86.   
  87. </body>  
  88.   
  89. </html>  

再补充一下刚才设定<a>标签的 target 属性遇到的小问题。
之前在“设置 href 多个属性”时,我将 target 设为 _self。这样的话,“然后点击button2,再点击链接”后,虽然仍然是同一个页面,但 href 已经由http://www.suxin.yeyou.eu变成了http://www.suxin.yeyou.eu/test.html",这不是我想要的结果,因为这样会导致“之后再点击button3,再点击链接”达不到我想要的效果。
于是我将 target 设为 view_frame。这样就既改变了属性,又不会出问题。那 view_frame 和 _blank 有什么区别呢?

target="view_window"
当用户第一次选择内容列表中的某个链接时,浏览器将打开一个新的窗口,将它标记为 "view_window",然后在其中显示希望显示的文档内容。如果用户从这个内容列表中选择另一个链接,且这个 "view_window" 仍处于打开状态, 浏览器就会再次将选定的文档载入那个窗口,取代刚才的那些文档。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值