我有一个生成的表单,<% Ajax.BeginForm() {} %>其中包含大量的输入和texareas.
当输入值改变时,我需要知道它并将输入和表单标记为"脏".如果用户试图不保存而离开页面,我会要求他或她确认放弃更改.
有关如何做到这一点的任何建议?
现在RC1已经出来了,我需要一劳永逸地决定是使用MS Ajax库还是只使用jQuery来进行AJAX请求.该应用程序是一个新的应用程序 基本上我决定的方式是我是否从微软库中获得了任何我从jQuery无法获得的重大好处.我已经有了jQuery加载,我担心文件大小的额外开销比什么都重要.
据我所知 - 唯一的好处是有帮助器Ajax.BeginForm,但也许这些可能会在某些时候使用jQuery吗?我的一位政府员工朋友今天也告诉我,MS Ajax库中有很多错误 - 这让我很担心.
随着微软现在正式成为jQuery的朋友,我不会太担心他们将来做任何事情,通过增强自己的库来让jQuery陷入困境.
我真的不知道MS Ajax究竟为我做了什么.是否存在某些利弊.或者支持'更新面板'只有90%的膨胀?
我也觉得非常有趣的是,ASP.NET MVC in Action一书只是跳过MS Ajax库并直接跳转到jQuery:
在本章中,读者将研究如何以比Web窗体更无缝的方式将ajax技术应用于ASP.NET MVC.读者将看到如何利用一个越来越流行的轻量级javascript库jQuery.
(来自AJAX的免费样本章节)
非常感谢任何人听到他们在两者中工作的经历,尤其是以下其他问题:
Ajax.BeginForm(...)和使用jQuery?我正在使用ASP.NET AJAX,并希望了解这两个片段之间的区别:
function pageLoad(sender, eventArgs) { }
Run Code Online (Sandbox Code Playgroud)
和
window.onload = function() { }
Run Code Online (Sandbox Code Playgroud)
我需要调用timer上的函数(比如onTickTack()函数)并在ASP.NET MVC项目中重新加载一些信息.我知道有几种方法可以做到这一点,但你认为哪一种最好?
注意:该函数应该只从一个地方调用,每隔X分钟调用一次,直到应用程序启动.
编辑1:重新加载一些信息 - 例如我在缓存中有一些东西,我想在计时器上更新它 - 在某个时间每天一次.
我有一个"提交反馈"表单,它使用"Ajax.BeginForm"来呈现包含表单元素的部分.即使ModelState无效,OnSuccess事件也会触发.这是正常的吗?我希望能够做一些回发导致模型无效,然后当模型有效且没有错误时,OnSuccess事件会触发?
在我正在构建的ASP.NET Web应用程序中实现的UpdatePanels中发生异常的情况下,它们会在页面上导致JavaScript错误,并在警报中提供一些高级错误输出.这对于开发来说是可行的,但是一旦系统处于生产状态,由于多种原因显然没有好处.我可以使用Try Catch等来控制Javascript错误,但在某些情况下,我想在主页面上执行操作以支持用户体验.
我如何优雅地处理UpdatePanels中出现的错误,以提供无缝和Javascript无错误的实现?
我有一个页面,上面有以下代码:
<script type="text/javascript" language="javascript">
/// <reference name="MicrosoftAjax.js" />
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
ToggleTimeDiv();
}
</script>
Run Code Online (Sandbox Code Playgroud)
当页面加载时,我收到以下错误:
我正在使用Visual Studio 2008标准版.导致此错误的原因是什么?
我在IIS7上运行我的ASP.NET应用程序时收到此错误.我已经尝试过做它应该做的事情,但它没有帮助.
必须在配置中注册WebResource.axd处理程序才能处理此请求.
> <!-- Web.Config Configuration File -->
>
> <configuration>
> <system.web>
> <httpHandlers>
> <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
> </httpHandlers>
> </system.web>
> </configuration>
Run Code Online (Sandbox Code Playgroud)
我正在使用一点点AJAX,这是我认为导致问题的原因.有没有人遇到过这个?
我正在尝试使用$ .post方法来调用Web服务,我使用$ .ajax方法工作:
$.ajax({
type: "POST",
url: "StandardBag.aspx/RemoveProductFromStandardBag",
data: "{'standardBagProductId': '" + standardBagProductId.trim() + "' }",
success: function(){
$((".reload")).click();
},
dataType: "json",
contentType: "application/json"
});
Run Code Online (Sandbox Code Playgroud)
但是当我将相同的方法移动到$ .post方法时,它将无法工作:
$.post("StandardBag.aspx/RemoveProductFromStandardBag",
"{'standardBagProductId': '" + standardBagProductId.trim() + "' }",
function () { $((".reload")).click(); },
"json"
);
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
无论我们是否检查会话变量,是否会在每个请求上重置会话超时?或者我们应该使用至少一个会话变量?
Ajax请求会导致重置会话超时吗?像Update Panel,jQuery ajax...
谢谢
编辑1)
会HTTP Get导致重置会话超时吗?
asp.net-ajax ×10
asp.net ×7
ajax ×4
jquery ×3
asp.net-mvc ×2
c# ×2
javascript ×2
.net ×1
exception ×1
session ×1
updatepanel ×1
web-config ×1