控制器中↓

        /// <summary>
/// 根据ID来进行展示数据
/// </summary>
/// <param name="instru_id"></param>
/// <returns></returns>
public ActionResult About(int instru_id)
{
ViewBag.Message = "Your application description page."; using (DBEntities db = new DBEntities())
{
List<T_Instrument> instru_data_list =
(from db_instru in db.T_Tablewhere db_instru.ID == instru_idselect db_instru).Take().Skip().ToList();
if (instru_data_list.Count > )
{
ViewBag.old_id = instru_data_list[].InstrumentDataID;
ViewBag.channel_index = instru_data_list[].ChannelIndex;
}
ViewBag.instru_id = instru_id;
ViewData["instru_data_list"] = instru_data_list;
}
return View();
}
/// <summary>
/// Ajax查询数据
/// </summary>
/// <param name="instru_id"></param>
/// <returns></returns>
public JsonResult GetData(int instru_id)
{
using (StationMonitoringDBEntities db = new StationMonitoringDBEntities())
{
List<T_Instrument> instru_data_list =
(from db_instru in db.T_Instrumentwhere db_instru.ID == instru_idselect db_instru).Take().Skip().ToList();
if (instru_data_list.Count > )
{
ViewBag.channel_index = instru_data_list[].ChannelIndex;
}
return Json(instru_data_list);
}
}

视图中↓

@using Domain;//引用的实体类的命名空间
@{
ViewBag.Title = "About";
} @Scripts.Render("~/bundles/jquery")<input type="button" id="btnBegin" name="btnBegin" value="连接数据库<针对实际项目,其它项目不需要这部分>" />
<input type="text" disabled id="begin_state" value="" />
<br />
<input type="text" id="id_msg" name="id_msg" value="要发送的字符串...根据这个字符串会向数据库添加数据 @ViewBag.channel_index" style="display:none;" />
<input type="button" id="btnSub" name="btnSub" value="数据库添加数据" />
<input type="text" disabled id="id_send_state" value="" style="display:none;" />
<input style="display:none;" id="hid_id" value="@ViewBag.old_id" /><table id="_table" border="" width="" height="" align="center" style="text-align:center;font-size:15px;">
<thead>
<tr>
<td>ID</td>
<td>名称</td>
</tr>
</thead>
<tbody id="_tbody">
@foreach (JoinInstrumentData jid in ViewData["instru_data_list"] as IEnumerable<JoinInstrumentData>)
{
<tr>
<td>@jid.ID</td>
<td>@jid.Name</td>
</tr>
}
</tbody>
</table> <script type="text/javascript"> $(document).ready(function () {
Date.prototype.format = function(fmt) {
var o = {
"M+" : this.getMonth()+, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+)/), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt)) {
fmt=fmt.replace(RegExp.$, (this.getFullYear()+"").substr( - RegExp.$.length));
}
for(var k in o) {
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$, (RegExp.$.length==) ? (o[k]) : ((""+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
} var interval_id=;
//表格用到的变量
var _table = document.getElementById("_table");
var _tbody = document.getElementById("_tbody"); //这是一些操作,然后向数据库中添加数据...
$("#btnSub").click(function () {
get_data();
var msg = $("#id_msg").val();
$.ajax({
type: "POST",
url: "/Home/sendbutton_Click",
data: {
"id": "xxxxxx",
"msg_send": msg
},
success: function (sesponseTest) {
//alert(sesponseTest);
alert("开始添加数据.");
$("#id_send_state").val(sesponseTest);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$("#id_send_state").val(errorThrown);
alert("保存失败:" + errorThrown);
}
});
}); function get_data() {
interval_id= setInterval(start_get, );
//alert(interval_id);
} function start_get() {
//alert("55");
$.ajax({
type: "POST",
url: "/Home/GetData",
data: {
"instru_id": @ViewBag.instru_id,
},
success: function (json_data) { json_data[].CreateTime = eval('new ' + (json_data[].CreateTime.replace(/\//g, '')));
json_data[].CreateTime=new Date(json_data[].CreateTime).format("yyyy/MM/dd hh:mm:ss");
//判断返回的id,如果一致,销毁这个定时器clearInterval(interval_id);
var id = json_data[].InstrumentDataID;
var old_id = $("#hid_id").val();
//alert("old_id"+old_id);
//alert("new_id"+id);
if (id != old_id) { var _tr = document.createElement("tr");
var _td = document.createElement("td");
////var _tab_len =_table.rows.length;
_td.appendChild(document.createTextNode(json_data[].InstrumentTypeName));
var row;
row=_table.insertRow();
var cell = row.insertCell();
var e = document.createElement("tr");
cell.appendChild(document.createTextNode(json_data[].InstrumentTypeName));
cell.appendChild(e);
//---有待优化...!!!!
cell = row.insertCell();
cell.appendChild(document.createTextNode(json_data[].InstrumentCode));
cell.appendChild(e);
clearInterval(interval_id);//销毁定时器
$("#hid_id").val(id);
}else
{ }
//alert(sesponseTest);
//$("#id_send_state").val(sesponseTest);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//$("#id_send_state").val(errorThrown);
alert("保存失败:" + errorThrown);
}
});
} //连接
$("#btnBegin").click(function () {
$.ajax({
type: "POST",
url: "/Home/conbtn_Click",
success: function (sesponseTest) {
//alert(sesponseTest);
$("#begin_state").val(sesponseTest);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//$("#txt1").val(errorThrown);
alert("保存失败:" + errorThrown);
}
});
}); }); </script>

ASP.NET 前端Ajax获取数据并刷新的更多相关文章

  1. node.js之用ajax获取数据和ejs获取数据

    摘要:学了node之后有时候分不清前台和后台,今天用ajax和ejs来从后台获取数据,没有数据库,用json数据来进行模拟数据库:来区分前台和后台需要干什么? 一.用ejs获取数据 1.文件目录 2. ...

  2. vue 中使用 AJAX获取数据的方法

    在VUE开发时,数据可以使用jquery和vue-resource来获取数据.在获取数据时,一定需要给一个数据初始值. 看下例: <script type="text/javascri ...

  3. jquery通过ajax获取数据,控制显示的数据条数

    效果图: 现在我们可以先看它的json数据,如图所示:                然后可以对应我们的代码进行理解. jquery通过ajax获取数据,并通过窗口大小控制显示的数据条数,以及可以根据 ...

  4. jquery.ajax和Ajax 获取数据

    前几天接触了jquery 看到里面ajax的部分,自己也不是很懂,然后有重复看了即便,然后写了一个小功能,分享下...我刚学的.有错误的请指教. 验证用户名是否存在 在checkname_jqajax ...

  5. vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全

    https://segmentfault.com/q/1010000005618139 vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全 点击提交,发送请求.但是api ...

  6. 获取链接的参数,判断是否是微信打开,ajax获取数据

    //获取链接参数function GetQueryString(name) {    var reg = new RegExp("(^|&)" + name + " ...

  7. select2 AJAX获取数据

    页面效果: index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8"& ...

  8. java后台设计简单的json数据接口,设置可跨域访问,前端ajax获取json数据

    在开发的过程中,有时候我们需要设计一个数据接口.有时候呢,数据接口和Web服务器又不在一起,所以就有跨域访问的问题. 第一步:简单的设计一个数据接口. 数据接口,听起来高大上,其实呢就是一个简单的Se ...

  9. 用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库

    小编自学Nodejs,看了好多文章发现都不全,而且好多都是一模一样的 当然了,这只是基础的demo,经供参考,但是相信也会有收获 今天的内容是用Nodejs+Express搭建基本的web,然后呢no ...

随机推荐

  1. 【Babble】批量学习与增量学习、稳定性与可塑性矛盾的乱想

    一.开场白 做机器学习的对这几个词应该比较熟悉了. 最好是拿到全部数据,那就模型慢慢选,参数慢慢调,一轮一轮迭代,总能取得不错效果. 但是面对新来数据,怎么能利用已经训练好的模型,把新的信息加进去? ...

  2. 设置Linux交换分区

    Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件.前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕.例如:安装redhat的时候,你可以 ...

  3. windows环境telnet发送命令

    telnet *.*.*.* port ,然后crtl+]进入命令模式,使用send发送消息,如:send hello,murphy 常用命令: open : 使用 openhostname 可以建立 ...

  4. sringboot项目在tomcat上的部署

    sringboot项目在tomcat上的部署原文链接: https://blog.csdn.net/zhaoyahui_666/article/details/78283559#comments 20 ...

  5. (转-经典-数据段)C++回顾之static用法总结、对象的存储,作用域与生存期

    转自:https://blog.csdn.net/ab198604/article/details/19158697相关知识补充:https://www.cnblogs.com/rednodel/p/ ...

  6. An SPI class of type org.apache.lucene.codecs.PostingsFormat with name 'Lucene50' does not exist. You need to add the corresponding JAR file supporting this SPI to your classpath. The current classp

    背景介绍: 当ES中guava库与hive等组件的库冲突时,对Elasticsearch库进行shade,relocate解决库冲突问题. 当使用"org.apache.maven.plug ...

  7. 【QT】error: 'SIGNAL' was not declared in this scope

    error: 'SIGNAL' was not declared in this scope  未在此范围内声明. connect(ui->Btnshowhello,SIGNAL(clicked ...

  8. [Laravel] 15 - REST API: sidebar with unit test

    前言 实现一个博客的侧边栏的链接,然后顺便对其进行单元测试的过程. Archives 一.视图中展示SQL结果 一条 sql 语句[查询] select year(created_at) year, ...

  9. 【!Important】Zookeeper用来做什么的,有几种类型的节点

    zookeeper=文件系统+通知机制 一.Zookeeper提供了什么 1.文件系统 Zookeeper维护一个类似文件系统的数据结构 每个子目录项如NameService都被称为znoed,和文件 ...

  10. [原]openstack-kilo--issue(十一)Failed connect to 169.254.169.254:80; No route to host

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. # curl http://169.254.169.254/latest/use ...