ASP.NET 前端Ajax获取数据并刷新
控制器中↓
/// <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获取数据并刷新的更多相关文章
- node.js之用ajax获取数据和ejs获取数据
摘要:学了node之后有时候分不清前台和后台,今天用ajax和ejs来从后台获取数据,没有数据库,用json数据来进行模拟数据库:来区分前台和后台需要干什么? 一.用ejs获取数据 1.文件目录 2. ...
- vue 中使用 AJAX获取数据的方法
在VUE开发时,数据可以使用jquery和vue-resource来获取数据.在获取数据时,一定需要给一个数据初始值. 看下例: <script type="text/javascri ...
- jquery通过ajax获取数据,控制显示的数据条数
效果图: 现在我们可以先看它的json数据,如图所示: 然后可以对应我们的代码进行理解. jquery通过ajax获取数据,并通过窗口大小控制显示的数据条数,以及可以根据 ...
- jquery.ajax和Ajax 获取数据
前几天接触了jquery 看到里面ajax的部分,自己也不是很懂,然后有重复看了即便,然后写了一个小功能,分享下...我刚学的.有错误的请指教. 验证用户名是否存在 在checkname_jqajax ...
- vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全
https://segmentfault.com/q/1010000005618139 vue ajax获取数据的时候,如何保证传递参数的安全或者说如何保护api的安全 点击提交,发送请求.但是api ...
- 获取链接的参数,判断是否是微信打开,ajax获取数据
//获取链接参数function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + " ...
- select2 AJAX获取数据
页面效果: index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8"& ...
- java后台设计简单的json数据接口,设置可跨域访问,前端ajax获取json数据
在开发的过程中,有时候我们需要设计一个数据接口.有时候呢,数据接口和Web服务器又不在一起,所以就有跨域访问的问题. 第一步:简单的设计一个数据接口. 数据接口,听起来高大上,其实呢就是一个简单的Se ...
- 用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库
小编自学Nodejs,看了好多文章发现都不全,而且好多都是一模一样的 当然了,这只是基础的demo,经供参考,但是相信也会有收获 今天的内容是用Nodejs+Express搭建基本的web,然后呢no ...
随机推荐
- 玩魔兽争霸无故退出 提示框显示"0x21101663"指令引用的"0x02704acc"内存该存不能为"read" 确定就会终止程序
20151002总结:下方法试过,没完全按照说的操作完,觉得有风险且那个read程序执行时间好长的,感觉有点干坏事的意思 ======================================= ...
- 浏览器URL参数解决方案
function getUrlParams() { var search = window.location.search; // 写入数据字典 , search.length).split(&quo ...
- IntelliJ IDEA的配置优化
IntelliJ IDEA的配置优化 我们安装完IntelliJ IDEA之后,在弹出的欢迎页面下方点击Configure,选择Setting,打开以下界面,我们在这个界面中进行配置. Appeara ...
- struts2:表单标签
目录 表单标签1. form标签2. submit标签3. checkbox标签4. checkboxlist标签5. combobox标签6. doubleselect标签7. head标签8. f ...
- eoe移动开发者大会—移动开发者的极客盛宴 2013年9月14日期待您的加入!!
2013 eoe移动开发者大会北京站即将盛大开启! 大会介绍 由国内最大的移动开发者社区eoe主办,在行业盟友的倾力支持下,集合了来自微软.Google.亚马逊.ARM等跨国公司业务负责人的 ...
- mac mini纯键盘操作连接蓝牙鼠标
许久不开家里的MAC MINI了,今天开来玩玩,结果进个桌面连接鼠标就费了好大的劲 现实情况: 1. 没有有线鼠标,只有一个USB键盘,一个微软3600蓝牙鼠标 MAC MINI连接上USB键盘,开机 ...
- 【Android】Android开源项目精选(一)
ListView ListView下拉刷新:https://github.com/johannilsson/android-pulltorefresh AndroidPullToRefresh:htt ...
- kafka项目中踩到的一个坑(客户端和服务器端版本不一致问题)
启动项目时控制台抛出的异常信息: -- :: --- [ main] o.s.s.c.ThreadPoolTaskScheduler : Initializing ExecutorService 't ...
- Xcode6:模拟器消失了?
今天打开Xcode,选择模拟器时发现只剩下了“iPhone 5”和“iPhone 5s”,原来什么“iPad Air”,“iPhone 4s”的都哪里去了?丢了? 别着急,依次打开“Xcode-> ...
- 和我一起学Effective Java之类和接口
类和接口 使类和成员的可访问性最小 信息隐藏(information hiding)/封装(encapsulation):隐藏模块内部数据和其他实现细节,通过API和其他模块通信,不知道其他模块的内部 ...