当前位置: 首页 > 面试题库 >

如何在我的jqgrid中添加一个取消按钮?

阎晗日
2023-03-14
问题内容

我的网站上有一个jqgrid(版本3.5.3),它是通过对Web服务的Ajax调用获取结果的。查询通常很复杂,加载结果需要花费几秒钟的时间。加载时,用户会看到一个框[Loading
…]。

如果用户意识到他们在搜索错误的内容,则客户端要求向网格添加一个取消按钮,这将:

  1. 使网格忘记刚刚请求的数据
  2. 保留先前搜索中已加载的结果

似乎没有内置任何功能,因此我可能正在寻找一些技巧来实现这一目标。

有任何想法吗?


问题答案:

这是我们的解决方案,与Oleg的解决方案非常相似,主要区别在于我们跟踪XHR列表以确保我们清理所有请求

var handlerUrl = '';

jQuery(document).ready(function() {
    var xhrList = [];

    var beforeSendHandler = function() {

        var cancelPendingRequests = function() {
            jQuery.each(xhrList, function() { this.abort(); });
            xhrList = [];
            return false;
        };

        var hideLoadingUI = function() {
            $(this).hide();
            $("#load_list").hide();
        };

        cancelPendingRequests();

        $("#load_list").show();

// some faffing around to ensure we only show one cancel button at a time
        if (jQuery("#cancelrequest").length == 0) {
            jQuery(".ui-jqgrid-titlebar").append(jQuery("<button   id='cancelrequest'>Cancel</button>").click(cancelPendingRequests).click(hideLoadingUI));
        } else {
            jQuery("#cancelrequest").show();
        };  
    }


    jQuery("#list").jqGrid({
        datatype: function(postdata) {

            GetSearchCriteria(); //needed for the grid's filtering

            var xhr = $.ajax({
                //we override the beforeSend so we can get at the XHRs, but this means we have to implement the default behaviour, like showing the loading message ourselves
                beforeSend: beforeSendHandler,
                dataType: "xml",
                data: postdata,
                success: function(xmlDoc) {
                    //
                    jQuery("#cancelrequest").hide();
                    $("#load_list").hide();
                    jQuery("#list")[0].addXmlData(xmlDoc);
                    xhrList = [];
                }



 类似资料:
  • 一个解决方案是(如果我读对了的话)添加一个任意的JPanel,在这个例子中是一个标签。我的问题是在消息窗口中需要一个JComboBox对象,并且(与解决coffee_table的问题相同)使用JComboBox似乎删除了取消按钮。如果我将YES_NO_CANCEL_OPTION替换为OK_CANCEL_OPTION或question_message并不重要。 对于JOptionPane家族,我仍然

  • 问题内容: 我想制作一个简单的表,其中包含一行自定义按钮。当按下按钮时,我想弹出一个“警告”框。我已经阅读了一些关于此的文章,我不明白为什么我的代码无法正常工作。绘制了按钮,但按下按钮无效。 我在这里描述了三种尝试。 版本1。单击按钮不会触发: HTML代码: 编辑8/2/12-自从我的原始文章以来,我已经学到了一些东西,在这里我描述了另外两次尝试。 版本2:我使用onCellSelect。这行得

  • 我有一个HTML格式的表,显示关于产品的数据。好吧,在这个表中我想添加一个按钮,允许用户在愿意的情况下删除该产品,该按钮将通过JavaScript与表中的信息一起自动生成。 没有信息的表应该如下所示: 在JavaScript中,我有一个函数可以处理这个表,一个用来添加空行,另一个用来添加信息,包括delete按钮。 其余的代码没有太大的关系,以至于有变量和函数的名字,我没有给出细节。对我来说最重要

  • 问题内容: 我只是试图在我的注释点添加一个细节按钮而被卡住,不幸的是,我不知道该怎么做。有人可以帮我吗? 下图显示了我想要实现的目标。谢谢! MapKitViewController: 问题答案: 您做对了,您只需要实现这些方法即可添加按钮以及标题和副标题 iOS 8和Xcode 6 查看我的输出。

  • 问题内容: 我需要传递给jqgrid,但找不到如何执行此操作的任何示例。这是我的尝试: 从服务器发送: 并在jqgrid中: 如何从jqgrid 发送和阅读? 编辑:我知道我正在被发送,因为我可以在Fiddler中看到它。我认为我只是停留在如何在客户端上阅读它。 问题答案: 通常,的用法非常简单。jqGrid支持您从服务器发送 将与jqGrid数据一起保存的 任何其他 数据。所以,如果jqGrid

  • 问题内容: 我有一个基于Swing的应用程序,其中包含一个。现在,我想使用唯一的行ID来更新或删除每一行。因此,我想向每行添加一个更新和删除按钮,它们具有支持ActionListener的功能。但是,我不知道如何使用NetBeans执行此操作。 问题答案: 要在列中显示按钮,您需要创建: 一个自定义渲染器以显示JButton 定制编辑器以响应鼠标单击 阅读Swing教程中有关如何使用表的部分。关于