ajax無(wú)刷新動(dòng)態(tài)調(diào)用股票信息(改良版)
更新時(shí)間:2008年11月01日 23:48:21 作者:
今日閑來(lái)無(wú)事,把上次寫(xiě)的代碼稍微改了改。增加了動(dòng)態(tài)追加和刪除股票信息的功能(代碼基于jquery運(yùn)行:http://jquery.com/) 。由于對(duì)Ajax技術(shù)的認(rèn)識(shí)還只是在初級(jí)階段,總覺(jué)得這么些有點(diǎn)別扭,希望大蝦能夠指點(diǎn)一二。
復(fù)制代碼 代碼如下:
<html>
<head>
<title>ajax test</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">...
function ajaxRequest()...{
var url = $("#stockurl").val() + $("#stockinit").val();
$.ajax(...{
url: url,
type: 'GET',
dataType: 'html',
timeout: 2000,
success: function(response)...{
var stocks = response.split(';');
for(var i=0; i<stocks.length-1; i++)...{
var content = stocks[i];
var temp1 = content.split('=')[0];
var temp2 = content.split('=')[1];
var code = temp1.substr(temp1.length - 6, 6);
var temp3 = temp2.replace('"', '');
var name = temp3.split(',')[0];
var tday_f = temp3.split(',')[1];
var yest_f = temp3.split(',')[2];
var curr_f = temp3.split(',')[3];
var temp_f = curr_f - yest_f;
$('#a'+i).html(code);
$('#b'+i).html(name);
if(curr_f > yest_f) ...{
$('#c'+i).html("<font color='red'>" + curr_f + "</font>");
} else if(curr_f < yest_f) ...{
$('#c'+i).html("<font color='green'>" + curr_f + "</font>");
} else ...{
$('#c'+i).html(curr_f);
}
$('#d'+i).html(tday_f);
$('#e'+i).html(yest_f);
if(temp_f > 0) ...{
$('#f'+i).html("<font color='red'>" + temp_f.toFixed(2) + "</font>");
$('#g'+i).html("<font color='red'>" + ((temp_f / yest_f) * 100).toFixed(2) + "</font> % ");
} else if(temp_f < 0) ...{
$('#f'+i).html("<font color='green'>" + temp_f.toFixed(2) + "</font>");
$('#g'+i).html("<font color='green'>" + ((temp_f / yest_f) * 100).toFixed(2) + "</font> % ");
} else ...{
$('#f'+i).html(temp_f.toFixed(2));
$('#g'+i).html(((temp_f / yest_f) * 100).toFixed(2) + " % ");
}
$('#h'+i).html(temp3.split(',')[4]);
$('#i'+i).html(temp3.split(',')[5]);
}
}
});
}
$(document).ready(function()...{
var stocks = $("#stockinit").val().split(',');
for(var i=0; i<stocks.length; i++)...{
addRows();
}
$("#insrow").click(function()...{
var stockcd = $("#stockid").val();
if(stockcd == "")...{
alert("股票代號(hào)不能為空!");
$("#stockid").focus();
return;
}
if(stockcd.length != 6)...{
alert("股票代號(hào)只能是6位!");
$("#stockid").focus();
return;
}
var div = 'sh';
if(document.getElementById("sz_id").checked)...{ div = "sz";}
var stocks = $("#stockinit").val();
$("#stockinit").val(stocks + "," + div + stockcd);
addRows();
});
$("#delrow").click(function()...{
var table = document.getElementById("tableId");
var index = table.rows.length;
if (index < 2)...{
alert("已經(jīng)沒(méi)有可刪除的行了!");
} else ...{
table.deleteRow(index - 1);
var stockvalue = $("#stockinit").val();
var count = stockvalue.split(',').length;
if(count == 1) ...{
stockvalue = "";
} else ...{
stockvalue = stockvalue.substr(0, stockvalue.length - 9);
}
$("#stockinit").val(stockvalue);
}
});
window.setInterval("ajaxRequest()",3000);
});
function addRows()...{
var table = document.getElementById("tableId");
var index = table.rows.length;
var str="";
var row = index - 1;
str+='<tr class="tr_cls">'
str+='<td align="center"><span id="' + "a" + row + '"></span></td>'
str+='<td align="center"><span id="' + "b" + row + '"></span></td>'
str+='<td align="center"><span id="' + "c" + row + '"></span></td>'
str+='<td align="center"><span id="' + "d" + row + '"></span></td>'
str+='<td align="center"><span id="' + "e" + row + '"></span></td>'
str+='<td align="center"><span id="' + "f" + row + '"></span></td>'
str+='<td align="center"><span id="' + "g" + row + '"></span></td>'
str+='<td align="center"><span id="' + "h" + row + '"></span></td>'
str+='<td align="center"><span id="' + "i" + row + '"></span></td>'
str+='</tr>';
$("#tablebody").append(str);
}
</script>
<style>...
.tr_cls {...}{
height:30px;
font-size:16px;
font-family:"Times New Roman", Times, serif;
background-color:#FFFFCC
}
</style>
</head>
<body>
<form>
<input type="hidden" id="stockurl" value="http://hq.sinajs.cn/list=" />
<input type="hidden" id="stockinit" value="sh000001,sz399001,sh601939,sh600016,sh600528,sh600667,sh601390,sh601857,sz000532,sh600019,sh601111,sh601600,sh601006,sh601333,sh601398,sh601988,sh601328" />
<table width="800" border="0" align="center" cellpadding="0" cellspacing="0" >
<tr>
<td width="115px">
代號(hào):<input type="text" id="stockid" size="6">
</td>
<td width="150px">
區(qū)分:上海<input type="radio" name="rad" id="sh_id" checked>深證<input type="radio" name="rad" id="sz_id">
</td>
<td width="40px">
<input type="button" id="insrow" value="行追加">
</td>
<td width="495px">
<input type="button" id="delrow" value="行削除">
</td>
</tr>
<tr>
<td colspan="4">
<div style="overflow-y:scroll; overflow-x:auto; height:392px; width:817px">
<table id="tableId" width="800" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#000000">
<tr bgcolor="#3399FF" height="30px">
<th scope="col">股票代號(hào)</th>
<th scope="col">股票名稱(chēng)</th>
<th scope="col">當(dāng)前價(jià)格</th>
<th scope="col">今日開(kāi)盤(pán)</th>
<th scope="col">昨日收盤(pán)</th>
<th scope="col">當(dāng)前差價(jià)</th>
<th scope="col">漲跌幅度</th>
<th scope="col">最高價(jià)格</th>
<th scope="col">最低價(jià)格</th>
</tr>
<tbody id="tablebody">
</tbody>
</table>
</div>
</td>
</tr>
</table>
</form>
</body>
</html>
相關(guān)文章
jQuery焦點(diǎn)圖切換簡(jiǎn)易插件制作過(guò)程全紀(jì)錄
本文主要講訴了本人制作一個(gè)jquery焦點(diǎn)圖切換的簡(jiǎn)易插件的過(guò)程,十分的詳細(xì),希望對(duì)大家能有所幫助2014-08-08
jQuery實(shí)現(xiàn)一個(gè)簡(jiǎn)單的輪播圖
本文主要介紹了jQuery實(shí)現(xiàn)一個(gè)簡(jiǎn)單輪播圖的方法,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02
jQuery在header中設(shè)置請(qǐng)求信息的方法
這篇文章主要介紹了jQuery在header中設(shè)置請(qǐng)求信息的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03
基于jQuery實(shí)現(xiàn)點(diǎn)擊最后一行實(shí)現(xiàn)行自增效果的表格
現(xiàn)在任何事務(wù)都追求效率和人性化,當(dāng)然網(wǎng)頁(yè)效果也是如此,如果一個(gè)可以編輯數(shù)據(jù)的表格,編輯到最后一行的時(shí)候,點(diǎn)擊可以自動(dòng)添加一行,這樣算是一個(gè)比較人性化的效果,可以免去一絲勞頓之苦,下面分享一段這樣的代碼2016-01-01
制作高質(zhì)量的JQuery Plugin 插件的方法
最近jquery非常流行,想個(gè)性化定制一些功能,就可以將代碼寫(xiě)成插件的形式,方便使用與修改。2010-04-04
jquery和雅虎的yql服務(wù)實(shí)現(xiàn)天氣預(yù)報(bào)服務(wù)示例
本文介紹一個(gè)利用Jquery和雅虎的YQL服務(wù)實(shí)現(xiàn)天氣預(yù)報(bào)功能,需要的朋友可以參考下2014-02-02
利用jQuery實(shí)現(xiàn)滑動(dòng)開(kāi)關(guān)按鈕效果(附demo源碼下載)
這篇文章主要介紹了利用jQuery實(shí)現(xiàn)滑動(dòng)開(kāi)關(guān)按鈕效果,文中給出了詳細(xì)的介紹,并在文末給出了完整的demo源碼下載,有需要的朋友可以參考簡(jiǎn)介,下面來(lái)一起看看吧。2017-02-02
jQuery實(shí)現(xiàn)的表格前端排序功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)的表格前端排序功能,涉及jQuery針對(duì)表格元素的獲取、遍歷及事件響應(yīng)相關(guān)操作技巧,需要的朋友可以參考下2017-09-09

