控制器中↓

        /// <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. Easyui的DataGrid 清除所有勾选的行。

    $('#grid').datagrid('clearChecked')='none';//清除所有勾选的行.

  2. 使用EF操作不同数据库(以SQLite为例)

    最近一直在和数据库作对. 从安卓平台上给了我个SQLite数据库,要求程序能够读取不同的文件.由于字段实在太多,不愿意直接使用原来直接读取datatable的方式来做,手动写映射太痛苦...于是想起来 ...

  3. 同一个脚本在SQLPLUS和SQLDEV上的不同

    前几天收集了信息给Oracle.oracle那边表示格式不正确.让我又一次收集.我非常费解,我是依照官方文档做的呀,怎么会? 于是我果断自己搭了一个环境:RHEL5.8+10.2.0.5 客户那边没法 ...

  4. 解决百度云推送通知,不显示默认Notification

    问题:百度云推送通知,不显示默认Notification 描述:采用推送消息的方式,可以在onMessage方法里面获取到推送的消息.另外推送通知也有获取到内容,后台日志也有show private ...

  5. 【XMPP】基于XMPP的即时通讯解决方案

    什么是XMPP 介绍XMPP之前,先来看看GTalk. GTalk是Google推出的IM(Instant Messaging,即时通讯)软件,类似于QQ和MSN. 从技术角度来说,GTalk与QQ和 ...

  6. js中$

    $符号在php中是表示变量的特征字符, 在js中它也有很多作用, 一般我们用来命名一个函数名称,获取id的1.首先可以用来表示变量, 比如变量 var s='asdsd'或var $s='asdasd ...

  7. 安装python后,启动时提示“0x00000000001”内存错误

    直关资料: https://www.cnblogs.com/onewalee/p/7887747.html 问题情况:安装python后,在CMD命令中启动python就提示一个内存错误的对话框,重新 ...

  8. Java知多少(78)Java向量(Vector)及其应用

    Vector(向量)是 java.util 包中的一个类,该类实现了类似动态数组的功能. 向量和数组相似,都可以保存一组数据(数据列表).但是数组的大小是固定的,一旦指定,就不能改变,而向量却提供了一 ...

  9. C++ 智能指针六

    /* 智能指针unique_ptr */ #include <iostream> #include <string> #include <memory> #incl ...

  10. jquery 选择对象随心所欲,遍历数组更是易如反掌

    jquery只要研究总结透彻了,那选择对象就会随心所欲,遍历数组更是易如反掌.选对对象,才能“娶妻生子”,才能有后续的数据处理.呵呵遍历对很关键. 怕只怕,学东西浅尝辄止一知半解.本篇特别研究总结jq ...