在ASP.NET MVC3中,当缓慢呈现的元素延迟文档就绪事件时,如何应用jQuery UI插件?

在ASP.NET MVC3中,当缓慢呈现的元素延迟文档就绪事件时,如何应用jQuery UI插件?,jquery,ajax,jquery-ui,dom,ready,Jquery,Ajax,Jquery Ui,Dom,Ready,我有一个页面,其中包含加载一个元素(第三方网格组件)时长时间运行的Ajax请求。此Ajax请求延迟文档上就绪事件的触发。我使用jQueryUI插件(按钮,dilog)。我曾经将它们应用于$(document.ready)处理程序中的元素,但现在在本例中,直到Ajax过程完成,我看到许多纯的、未格式化的丑陋元素。请求可能需要4-5秒,因此非常烦人。对于这种情况,有什么好的解决方案 我可能会在请求完成之前隐藏相应的元素,然后显示它们,但如果有,我更喜欢一些更通用的技术 此外,不幸的是,我对这个组件没

我有一个页面,其中包含加载一个元素(第三方网格组件)时长时间运行的Ajax请求。此Ajax请求延迟文档上就绪事件的触发。我使用jQueryUI插件(按钮,dilog)。我曾经将它们应用于$(document.ready)处理程序中的元素,但现在在本例中,直到Ajax过程完成,我看到许多纯的、未格式化的丑陋元素。请求可能需要4-5秒,因此非常烦人。对于这种情况,有什么好的解决方案

我可能会在请求完成之前隐藏相应的元素,然后显示它们,但如果有,我更喜欢一些更通用的技术

此外,不幸的是,我对这个组件没有太多的控制权,所以我无法控制它加载数据的时间和方式

编辑:延迟就绪事件的请求当然不是Ajax请求,而是组件MVC部分视图的长时间处理。但是问题仍然存在,因为页面的其他部分(“上面”这个区域)加载得更早


编辑:我在ASP.NET MVC3中工作,可能一些输出缓冲技术会有所帮助,这将防止在处理整个请求之前刷新任何内容(类似于PHP中的ob_XXX函数).

在dom就绪并创建UI之后启动ajax请求怎么样?

在我找到一种更合适的技术之前,我在这些元素中添加了一个名为“hidden Until ready”的特殊CSS类,它定义了“display:none”。在DocumentReady事件中,我在应用插件之前执行一行jQuery来显示它们。感谢您的回复。

使您的ajax请求异步,否则除了通过手动将类添加到元素来预先格式化jquery ui小部件之外,您真的没有什么可以做的。ajax中的(第一个)a表示异步,它如何延迟该方法?@efkah,您是对的,我仔细检查了它,当然,这不是一个ajax请求,只是组件MVC部分视图的纯长时间运行的第一次加载。我将更新我的问题,但是问题仍然存在。我澄清了问题中的环境,它是ASP.NET MVC3,可能一些输出缓冲控制在这种情况下会有所帮助。我希望看到一些代码。您使用哪种视图引擎,aspx还是razor?我在问题中添加了一条注释,很遗憾,我无法控制它。