繁体   English   中英

在后台获取数据而不影响.net + jquery中的UI

Get data in background without affecting UI in .net + jquery

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我需要在Jquery中创建多个搜索请求,这些请求从不同的表/页面进行搜索,并且需要将所有搜索结果组合到一个HTML表中并在UI中显示结果。

下面是我的方法。

在Jquery中使用$ .ajax,我转到服务器(.Net代码),获取JSON数据,返回JS文件并构建HTML表并显示结果(此结果将具有复选框供用户检查/取消选中结果) )。 显示结果后,我再次使用$ .ajax,转到服务器(.NET代码)并获取数据,并将结果附加到第一个HTML表中。

我的要求是,在这两个请求之间,我需要

1)显示正在加载的图像/文本。

2)用户应该能够访问(滚动,检查,取消选中)第一个JSON请求返回的HTML表结果。

我也能完成1)。 我面临的问题是关于2)。 一旦结果来自第一个请求,并且在div中显示了结果,便再次使用$ .ajax触发第二个搜索请求。 目前,我无法访问HTML表。 页面冻结,直到第二个请求的结果到来,直到我将结果绑定到HTML表为止。

我的代码是这样的。

function SearchDetails() {
GetDetails("Test", 0); /*Trigger First Request*/ }

function GetDetails(searchKeyword, iAppend) {
$.ajax({
    type: "POST",
    url: "FETCH_DETAILS.asmx/GetDetails",
    data: "{'searchKeyword':'" + searchKeyword + "', 'Append':'" + iAppend + "'}",
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    async: false,
    crossDomain: true,
    jsonp: false,
    success: function (response) {
        if(iAppend == 0) //First Request
        {
            BindTable(response.d, iAppend); //Creates new HTML table and binds results
            GetDetails("TestNew", 1);//Trigger Second Request
        }
        else if (iAppend == 1) {
           BindTable(response.d, iAppend);
        }
    },
    failure: function (msg) {
        alert(msg);
    },

});}

function BindTable(SearchResults, iAppend){
/*Creates HTML Table & binds to a div for First Request
Creates HTML Table Rowss & appends to existing HTML table for Second Request*/ }

请建议我是否丢失任何内容,或者是否有办法从Jquery转到服务器(.NET代码)而不影响(冻结)显示/ UI。

1 个回复

也许设置:

async: false

async: true
1 如何在后台线程中加载图像而不影响UI?

我正在从互联网上获取大量图像并加载到我的winform中。 除了从慢速连接中提取图像的时间延迟外,一切正常。 我希望在后台获取图像,但UI不应该没有响应。 我试过'BackgroundWorker',但它没有用。 有没有其他方法这样做? 我读到了异步调用,但我不确定它是否适用于我。 ...

2 如何在后台执行任务而不影响UI线程?

我正在制作一些特殊的Android启动器,在完成结果之前,用户界面中的许多点击都应该进行一些繁重的操作。 我不希望在执行过程中挂起UI。 我不想在每个作业上都创建Thread ,因为这会占用大量资源。 请注意,我希望Thread能够按发生的顺序依次执行。 ...

3 JavaScript中不影响UI交互的后台任务

我正在开发一个用JavaScript实现的移动应用程序,该应用程序必须做很多后台工作-主要是从服务器(通过JSONP)获取数据,然后使用本地存储将其写入数据库。 在前台,用户可以在本地存储的数据上导航,因此需要平稳响应的App。 这种交互(通过JSONP从服务器获取数据,并做了一些小的工 ...

4 在后台获取数据并在UI中显示

我使用凌空获取使用数据volley和显示在用户界面,并且需要时间来加载该数据。 我想发生的是,我想在启动屏幕或加载屏幕期间在后台获取数据,并将其显示在用户interface 。 我希望获取部分在另一个activity完成,它应该是后台service ,应该在“ main activity ” ...

5 如何在后台从Web服务中获取数据然后更新UI

我正在做的是应用推视图控制器从表视图的didSelectMethod移至下一个视图。 然后在下一个视图控制器上获取该视图的数据。 因此,问题是只有在完全提取数据并且包含图像和文本时,视图才会切换。 但是我已经对图像应用了延迟加载,但是问题是立即移至下一个视图,然后获取数据并更新UI和tab ...

6 在div中重置CSS而不影响jquery-ui

我有一个样式表,用于控制一个div(id =“ qab”)中所有内容的布局。 它从重置开始,如下所示: 除我要使用最终被其重置且因此无法正常工作的jquery-ui元素外,此方法效果很好。 我发现使它起作用的唯一方法是在所有.ui样式前加上#qab,但是在qab div之外使用的 ...

7 如何在后台运行代码而不影响tkinter GUI?

我正在开发使用tkinter的GUI,它充当图像查看器。 工作流程是从菜单栏中选择带有“新图像”选项的图像,该图像在画布上显示所选图像,并创建一个带有行和列的小窗口,该窗口显示所选图像文件夹中的所有图像。 我面临的问题是,当加载文件夹中的所有图像时,大约需要6秒钟,而仅在6秒钟之后,所选图像 ...

9 如何删除一列并获取html而不影响Jquery中的dom

我有一个asp.net 应用程序。 我想传递最后没有删除按钮的网格视图 HTML,以使用 jquery 生成 pdf 而不会影响 DOM。 所以我需要在没有最后一个 th 和 td 的情况下获取 gridview 的 html。 我将如何能够做到这一点? ...

10 在后台获取数据

我正在开发一个应用程序,该应用程序在登录时会提取大量数据。我想在后台从Web服务中提取此数据。 “背景”是指类似App.cs之类的东西。 数据已加载,而用户在浏览我的应用程序页面时浏览了数据。 现在,我的应用程序将所有数据加载到登录页面上,然后显示主页。 在主页上时,我希望应用程序加 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM