国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Jquery中對數組的操作代碼

2019-11-20 23:43:10
字體:
來源:轉載
供稿:網友
而在Jquery中則使用$.map()、$.each()來操作數組:
首先是普通的數組(索引為整數的數組):
復制代碼 代碼如下:

$.map(arr,fn);
對數組中的每個元素調用fn函數逐個進行處理,fn函數將處理返回最后得到的一個新的數組
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1];
var newarr = $.map(arr, function(item) {return item*2 });
alert(newarr);
$.each(array,fn)對數組array每個元素調用fn函數進行處理,沒有返回值
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1];
$.each(arr, function(key, value) { alert("key:" + key + "value:" + value); });
還可以省略function的參數,這個時候this可以得到遍歷的當前元素的值
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1];
$.each(arr, function() { alert(this); });

然后是索引為字符串的 鍵值對數組,針對這類數組,
一般采用$.each(array,fn)來操作:
var arr = { "jim": "11", "tom": "12", "lilei": "13" };
$.each(arr, function(key, value) { alert("姓名:"+key+"年齡:"+value); });
當然也可以使用無參的的function進行遍歷;
當這類數據從服務器端獲取時可以如下進行:
服務器端:
復制代碼 代碼如下:

<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;
using System.Web.Script.Serialization;
using System.Collections.Generic;
public class Handler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
Person p1 = new Person { Age = "22", Name = "tom" };
Person p2 = new Person { Age = "23", Name = "jim" };
Person p3 = new Person { Age = "24", Name = "lilei" };
IList<Person> persons = new List<Person> {p1,p2,p3};
JavaScriptSerializer js = new JavaScriptSerializer();
string s= js.Serialize(persons);
context.Response.Write(s);
}
public class Person
{
public string Name { get; set; }
public string Age { get; set; }
}
public bool IsReusable {
get {
return false;
}
}
}

先實例化了三個person對象,然后放到一個集合中,最后把這個集合序列化成字符串流到客戶端;
客戶端:
客戶端通過$.parseJSON()將后臺傳遞過來的字符串轉化為js數組對象,接下來我們就使用操作普通數組的方式來操作這個得到的數組
第三種就是通過標簽選擇器獲取的Jquery對象數組,
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="../myjs/jquery-1.4.2.js" type="text/javascript"></script>
<script type ="text/javascript" >
$(function() {
$("p").text("這是p標簽");
});
</script>
</head>
<body>
<p></p>
<p></p> <p></p> <p></p> <p></p>
<p></p>
</body>
</html>

在瀏覽器中運行的效果為:

在dom加載完成后為每一個p元素動態的添加了文本,首先$("p")獲取p標簽的集合,相當于Javascript中的 document.getElementByTagName只是這里得到的是Jquery對象的數組,這樣就有了Jquery固有的隱式迭代的功能,后面的text("這是p標簽")的操作就迭代到了每一個P標簽上,我們也可以顯示的調用each函數來顯示的迭代獲得的Jquery對象數組,下面的代碼同樣可以實現上面的效果:
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="../myjs/jquery-1.4.2.js" type="text/javascript"></script>
<script type ="text/javascript" >
$(function() {
$("p").each(function() {
$(this).text("這是p標簽");
});
});
</script>
</head>
<body>
<p></p>
<p></p> <p></p> <p></p> <p></p>
<p></p>
</body>
</html>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 突泉县| 永兴县| 宽城| 庆阳市| 边坝县| 富阳市| 泰兴市| 肇东市| 沂源县| 乐昌市| 英山县| 和林格尔县| 泽普县| 宜春市| 甘孜| 九江市| 开江县| 临江市| 西充县| 长春市| 西华县| 东乡县| 寿宁县| 万全县| 岳普湖县| 扬中市| 万源市| 托克逊县| 肇源县| 临武县| 昌江| 共和县| 巴林左旗| 文成县| 察隅县| 刚察县| 吉隆县| 光泽县| 克东县| 博白县| 保亭|