http://bbs.csdn.net/topics/390645545
http://bbs.csdn.net/topics/390645663
http://bbs.csdn.net/topics/390645605这三个帖子都没有找到答案 这是第四个了 大侠 不管你用什么方法 只要实现功能就行了 要BS的代码
http://bbs.csdn.net/topics/390645663
http://bbs.csdn.net/topics/390645605这三个帖子都没有找到答案 这是第四个了 大侠 不管你用什么方法 只要实现功能就行了 要BS的代码
我因为这些年都是做CS BS基本也是做ERP什么的 像AJAX轮询什么的很生疏 所以老大给任务的时候我还特意问了用BS还是CS 结果老大要BS的 好蛋疼啊 CS半个小时就可以了 偏要我用BS 我该怎么办 小弟还在试用期啊 苦逼
<head runat="server">
<script src="jquery-1.8.3.min.js" type="text/ecmascript"></script>
<title></title>
<script type="text/javascript">
window.setInterval(getAjaxData, 5000);
function getAjaxData(){
$.ajax({
type: "GET",
async: false,
//url: "WebForm2.aspx?abc="+Math.random(),
//dataType: "html",
url: "WebForm1.aspx/SetLabel",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
//返回的数据用data.d获取内容
alert(data.d);
},
error: function(err) {
alert(err);
}
//success:function(html){
// $("#ajaxData").html(html);
//}
});
}
</script>
</head><body>
<form id="form1" runat="server">
<div id="ajaxData"></div><asp:GridView runat="server" ID="GridView1"></asp:GridView>
</form>
</body>
</html>
后台
static DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
dt.Columns.Add("yvalue", typeof(string));
dt.Rows.Add();
dt.Rows[dt.Rows.Count - 1][0] = "开始";
GridView1.DataSource = dt;
GridView1.DataBind();
Thread t = new Thread(new ThreadStart(rand));
t.Start(); }
private string SetLabel()
{
GridView1.DataSource = dt;
GridView1.DataBind();
return "cs";
}
void rand()
{
for (int i = 0; i < 100;i++ )
{
dt.Rows.Add();
dt.Rows[dt.Rows.Count - 1][0] = i.ToString()+"开始";
Thread.Sleep(5000);
}
}
}
}我这个是模拟的SOCKET接收 SOCKET接收也是不断的更新datatable 我这个也是 然后前台AJAX调用绑定函数 结果只弹窗 没刷新AJAX
我因为这些年都是做CS BS基本也是做ERP什么的 像AJAX轮询什么的很生疏 所以老大给任务的时候我还特意问了用BS还是CS 结果老大要BS的 好蛋疼啊 CS半个小时就可以了 偏要我用BS 我该怎么办 小弟还在试用期啊 苦逼
也就是上面几楼说的,使用ajax定时刷新,不断请求,以模拟服务器的推送功能。我以前做BS是,经常使用AjaxPro来出来Ajax的,其他的都是js的写法,只要简单了解下AjaxPro的用法,就OK了
http://www.cnblogs.com/lexus/archive/2007/11/29/977281.html
这个AjaxPro的教程,是比较简单的,很容易的,你操作下,或者直接在项目中使用也可以,JS方面就看你的基础了,不行在了解学习下js。
还是那句话,改变思想,你做的是B/S,而不是C/S
改为
return "{result:\"cs\"}"
虽然不能实现一来数据就绑定 但也勉勉强强把