控制器中↓

        /// <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. PostgreSQL之时间戳自动更新

    操作系统 :CentOS7.3.1611_x64 PostgreSQL版本 :9.6 问题描述 PostgreSQL执行Insert语句时,自动填入时间的功能可以在创建表时实现,但更新表时时间戳不会自 ...

  2. M1 卡技术规范

    射频卡简单来讲就是卡的一种工作方式,通过感应的方式来工作,也能够把全部的感应卡都统称为射频卡. IC卡的范围比較广.芯片外露的接触式IC卡.芯片内置的感应式IC卡和双界面IC卡都可统称为IC卡.IC卡 ...

  3. elasticsearch日志删除命令

    通过curl发送DELETE命令给elasticsearch服务器,进行日志删除操作.命令示例如下: curl -XDELETE *' curl -XDELETE 'http://192.168.10 ...

  4. String拼接字符串效率低,你知道原因吗?

    面试官Q1:请问为什么String用"+"拼接字符串效率低下,最好能从JVM角度谈谈吗? 对于这个问题,我们先来看看如下代码: public class StringTest { ...

  5. elasticsearch 支持中英文搜索和混合搜索

    环境: ubuntu16.04 安装: elasticsearch 5.22 1. 第一步,安装java apt-get install default-jre apt-get install def ...

  6. 每日英语:Upgrade Your Life: How to speed up your PC (or Mac)

    Is your desktop or laptop computer starting to feel a little poky? Even after just a few months of u ...

  7. DIOCP-V5发布

    DIOCP-v5开源项目 https://github.com/ymofen/diocp-v5   DIOCP-v5 0.0.1   2015-02-22 08:40:40 1.规范单元文件的命名,和 ...

  8. Emacs常用基本操作

    按键约定 组合按键 Emacs中大量的按键操作都是各式各样的组合按键(快捷键),下面是几种通常的约定: Ctrl键:表示为C Alt键:表示为M Shift键:表示为S 组合按键:比如向下移动一行的组 ...

  9. mxnet:基础知识和一个简单的示例

    NDArray与NumPy的多维数组类似,但NDArray提供了更多的功能:GPU和CPU的异步计算:自动求导.这使得NDArray能更好地支持机器学习. 初始化 from mxnet import ...

  10. 【原】使用Json作为Python和C#混合编程时对象转换的中间文件

    一.Python中自定义类对象json字符串化的步骤[1]   1. 用 json 或者simplejson 就可以: 2.定义转换函数: 3. 定义类 4. 生成对象 5.dumps执行,引入转换函 ...