为了账号安全,请及时绑定邮箱和手机立即绑定

如何实现在Jquery $.ajax地址指向本地的.aspx 页面类似与UpdatePanel

如何实现在Jquery $.ajax地址指向本地的.aspx 页面类似与UpdatePanel

神不在的星期二 2018-12-06 11:37:42
    如何用jquery或者javascript实现像UpdatePanel一样的机制: 比如在 test.aspx 页面写ajax的代码,然后在 test.aspx.cs  页面写 ajax 的响应代码, 具体点就是:前端 div+css+jquery(不是用微软封装好的控件),后台写在同一 asp.net 页面的后台代码,既是 .aspx.cs 中  因为我现在是在做asp.net 所以希望能给asp.net 方面的例子。
查看完整描述

29 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

@Mr 88: 我就猜到他可能看不懂你的MVC,因为学过MVC的还有几个回去弄aspx(虽然我一直觉得html+ashx才是最佳组合,当初没学MVC的时候,总感觉好神秘的样子,现在看来也就那样)?

查看完整回答
反对 回复 2018-12-24
?
哔哔one

TA贡献1854条经验 获得超8个赞

用一个ashx处理就行了,不然就用aspx.cs文件 给一方法打上webmethod标签(这个楼上已经说过了),

查看完整回答
反对 回复 2018-12-24
?
jeck猫

TA贡献1909条经验 获得超7个赞

@Shinto Ruan: 能发一个页面的样板给我么?

查看完整回答
反对 回复 2018-12-24
?
ITMISS

TA贡献1871条经验 获得超8个赞

@阿隐: 其实我的代码就是写在Test.aspx.cs中的,这个类继承了Page,从而有了获取前端参数的能力,建议你去看看httphandler的原理,很有帮助

查看完整回答
反对 回复 2018-12-24
?
BIG阳

TA贡献1859条经验 获得超6个赞

@阿隐: 你的意思是将前端代码卸载Test.aspx上,而后端代码写在Test.aspx.cs上么?

查看完整回答
反对 回复 2018-12-24
?
慕沐林林

TA贡献2016条经验 获得超9个赞

不知道你想获取什么数据,我也好久没用过aspx了。我给你讲个思路。

查看完整回答
反对 回复 2018-12-24
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

@Qlin: 看了几篇,不是很懂怎么用,如果方便能不能帮我写一个例子

查看完整回答
反对 回复 2018-12-24
?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

@Qlin: .clear(),.End()都不行,如果另建一个,就不是同页面ajax了,而是两个页面实现了,

查看完整回答
反对 回复 2018-12-24
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

看了一些文章,只有当只拥有这一行的时候才有返回值

“<%@ Page Title="" Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="ProjectFiles" %>”

而且如果用Response.Write()返回就会直接在本页面的前台直接的打印出来了,

想问那后台又要用什么返回数据呢

查看完整回答
反对 回复 2018-12-24
?
萧十郎

TA贡献1815条经验 获得超12个赞

ajax的url地址 写 test.aspx 就可以了。具体逻辑 可以带参数后台代码判断

查看完整回答
反对 回复 2018-12-24
?
千万里不及你

TA贡献1784条经验 获得超9个赞

window.location.href就是当前页面啊

查看完整回答
反对 回复 2018-12-24
?
侃侃无极

TA贡献2051条经验 获得超10个赞

@阿隐: 我给的代码就是MVC的,你可以直接拿来用

查看完整回答
反对 回复 2018-12-24
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

@阿隐: 返回一个HTML View的

// JS

function loadNames() {
var $nameListWrapper = $('#name-list-wrapper'); //data-src="@Url.Action("GetNames", "Dashboard", new { area = "XX"})
$.ajax({
url: $nameListWrapper.attr('data-src'),
cache: false,
success: function (data) {
$$nameListWrapper.html(data);
}
});
}

 

// Action 

public ActionResult GetNames() //TODO
{
try
{
ViewBag.Names = GetNames();
}
catch
{}

return View();
}

查看完整回答
反对 回复 2018-12-24
?
慕村225694

TA贡献1880条经验 获得超4个赞

能否写一段前端test.aspx $.ajax的调用和test.aspx.cs 后台的代码,只要随便写一个json文件就可以了

查看完整回答
反对 回复 2018-12-24
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

基本思路:

1. url指向Controller的Action

2. Controller的Action里返回HTML或json对象。

3. js success 回调函数中输出或解析后输出

查看完整回答
反对 回复 2018-12-24
?
不负相思意

TA贡献1777条经验 获得超10个赞

@沧海一杰: 我只是需要在同一页面实现Ajax就可以了不要求其他

查看完整回答
反对 回复 2018-12-24
?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

@沧海一杰: 而且实现了页面状态的持续,其实是ViewState的来回传弟,如果ViewState很大,性能很低的。

查看完整回答
反对 回复 2018-12-24
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

@阿隐: 无论是什么方式,其实都是通过Response.Write(File)返回,只不过设置了不同的http header, 比如返回json数据设置成了application/json.

要实现UpdatePannel的功能其实不容易,因为UpdatePannel它已经在服务端做了页面合并,异步返回数据后只刷新更新了的部分。自己做一个小功能倒是可以,但模拟一个一模一样的机制,估计工作量不小。而且UpdatePanel性能也不怎么高啊。

查看完整回答
反对 回复 2018-12-24
?
翻阅古今

TA贡献1780条经验 获得超5个赞

试过如果用在.aspx 的前端显示页面直接访问当前页面的后台是无法返回数据的,而且我不知道要怎么返回数据,找了很多都是Response.Write() 返回,如果用Response.Write()返回就会直接在本页面的前台直接的打印出来了,所以不是很清楚UpdatePanel是怎样实现的同页面ajax

查看完整回答
反对 回复 2018-12-24
  • 29 回答
  • 0 关注
  • 953 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信