JAvascriptオブジェクトインスタンス

4958 ワード

javascriptはオブジェクト向けのスクリプト言語で、オブジェクトの使い方がわからなければjavascriptの習得にも慣れていないので、知っているとしか言えないので、最近、javascriptオブジェクトを猛攻して勉強しました
多くの実例、javascriptオブジェクトに対して多少理解して、ハハ、自分が後で忘れないようにして、私は小さい実例を書いて、後で参考に供します.
この例に関する知識は主にJquery,DOM,Javascriptオブジェクトとprototype,および配列である.ページのマウントが完了したら、配列を初期化します.あと3秒おきにgetStatus関数を呼び出します.
配列内のinrunningが3の要素を選択し、jqueryメソッドを呼び出して状態を取得し、状態を取得した後、isrunningが3でないまで、配列内の対応する要素のisrunning値を新しい状態でリフレッシュします.
	function getStatus() {
		
		var deployids = new Array();
		deployids.splice(0, deployids.length);
		
		for (var i = 0; i < tinfo.length; i++) {
			if (tinfo[i].isrunning === "3") {
				var deployid = tinfo[i].deployid;
				deployids.push(deployid);
			}
		}
		
		if (deployids.length > 0) {
			$.get("/testManage_getTestStatus", {Action:"get", deployids:deployids.toString(), async:false}, function(data) {
				var status = data.split(" ");
				for (var i = 0; i < deployids.length; i++) {
					var index = tinfo.get_index(deployids[i]);
					tinfo[index].isrunning = status[i];
					refresh(status[i], tinfo[index].tdid, tinfo[index].testid);
				}
			});
		}
	}
	
	function refresh(s, id, testid) {
		var div10 = "
 
"; var div11 = "
 
"; var div20 = "
 
"; var div21 = "
 
"; var div30 = "
 
"; var div31 = "
 
"; var div40 = "
 
"; var div41 = "
 
"; var div50 = "
 
"; var div51 = "
 
"; var div60 = "
 
"; var div61 = "
 
"; if ("3" == s) { document.getElementById(id).innerHTML = "
"; } else if ("1" == s) { document.getElementById(id).innerHTML = div10 + div20 + div31 + div41 + div51 + div60; } else if ("2" == s) { document.getElementById(id).innerHTML = div10 + div21 + div30 + div41 + div51 + div60; } else if ("0" == s) { document.getElementById(id).innerHTML = div10 + div20 + div30 + div41 + div51 + div60; } } function testInfo(index, testid, deployid, isrunning, tdid) { this.testid = testid; this.deployid = deployid; this.isrunning = isrunning; this.tdid = tdid; this.index = index; } function get_index(deployid) { var i; for (i = 0; i < this.length; ++i) { if (this[i].deployid === deployid) { return this[i].index; } } if (i == this.length) { return -1; } } function initTestInfo() { var c = "${curtestcount}"; var testinfo = new Array(); for (var i = 0; i < c; ++i) { var testindex = "test" + i; var statusindex = "status"+i; var deployindex = "deploy"+i; var tdid = "td" + i; var deployid = document.getElementById(deployindex).value; var testid = document.getElementById(testindex).value; var status = document.getElementById(statusindex).value; var tmp = new testInfo(i, testid, deployid, status, tdid); testinfo.push(tmp); } return testinfo; } var tinfo = null; $(document).ready(function(){ Array.prototype.get_index = get_index; tinfo = initTestInfo(); window.setInterval(getStatus, 3000); });