`
pacer123
  • 浏览: 91909 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

获取表单中的参数数据集并查询

EXT 
阅读更多

    在项目中某些模块进行查询时,可以通过form.findField('xxx');的方式一一获得表单参数,然后传递到后台进行查询。

    我们可以通过如下的方式获取,只需要调用prepareParamsFromForm 方法并将frm对象以及列表对象当做参数传递进去,即可实现对表单数据参数的赋值。
1、 获取表单数据
var prepareParamsFromForm = function(frm, store) {
 store.baseParams = {};

 var params = frm.getValues(true);
 // alert(params);

 var paramsArr = params.split("&");

 for (var i = 0; i < paramsArr.length; i++) {
  var paramsField = paramsArr[i].split("=")[0];
  var paramsValue = paramsArr[i].split("=")[1];
  if (!paramsValue || decodeURI(paramsValue) == "请选择") {
   continue;
  }

  paramsValue = decodeURI(paramsValue);
  // 替换所有%2C为逗号
  while ((paramsValue = paramsValue.replace('%2C', ',')).indexOf('%2C') != -1);

  if (store.baseParams[paramsField]) {
   store.baseParams[paramsField] += "," + paramsValue;
  } else {
   store.baseParams[paramsField] = paramsValue;
  }
 }
}

2、对表单数据进行了组装时候则需要调用updateGrid方法更新grid数据

updateGrid(grid, {
          start : 0,
          limit : 20
         }, function() {
          btn.enable();
         }); 

该公共方法的具体实现如下

var updateGrid = function(grid, params, callback) {
 emptyGrid(grid);

 var store = grid.getStore();
 var tbar = grid.getTopToolbar();
 var bbar = grid.getBottomToolbar();

 store.load({
    params : params ? params : {},
    callback : function() {
     ////更新分页
     if (tbar) {
      tbar.updateInfo();
     }
     if (bbar) {
      bbar.updateInfo();
     }
     //执行回调
     if (callback && typeof(callback) == 'function') {
      callback();
     }
    }
   });
}

 

内部的清空列表公共方法如下

/**
 * 清空列表
 * @param {} grid
 */
var emptyGrid = function(grid) {
 if (!grid) {
  Ext.MessageBox.alert("错误", "列表不存在");
  return;
 }

 var store = grid.getStore();
 if (!store) {
  Ext.log("错误", "列表的数据集不存在");
  return;
 }

 //清空复选框
 var sm = grid.getSelectionModel();
 if (sm) {
  // 清空所有选择项和全选
  var t = Ext.get('x-grid3-hd-checker');
  if (t && t.dom.className == 'x-grid3-hd-checker') {
   var hd = Ext.fly(t.dom.parentNode);
   hd.removeClass('x-grid3-hd-checker-on');
   sm.clearSelections();
  } else {
   sm.clearSelections();
  }
 }

 var tbar = grid.getTopToolbar();
 var bbar = grid.getBottomToolbar();

 //数据集 
 store.removeAll();

 //更新分页
 if (bbar && bbar.updateInfo) {
  bbar.updateInfo();
  bbar.afterTextEl.el.innerHTML = String.format("共 {0} 页", 1);
  bbar.first.setDisabled(true);
  bbar.prev.setDisabled(true);
  bbar.next.setDisabled(true);
  bbar.last.setDisabled(true);
  //bbar.loading.disable();
 }
}

分享到:
评论

相关推荐

    数字识别数据集

    使用这个数据集可能会遇到挑战,如数据增强(Data Augmentation)来增加模型的泛化能力,模型的轻量化以适应低功耗设备,或者利用迁移学习(Transfer Learning)从已训练的大型模型中获取预训练权重来加速训练并提高...

    PHP基础,使用PHP访问表单数据

    例如,如果表单使用POST方法提交,那么表单字段`name="username"`的数据可以通过`$_POST['username']`获取。确保在处理这些数据前进行验证和清理,以防止SQL注入等安全问题。 2. **连接MySQL数据库**: 在PHP中,...

    利用Infopath2007实现SQL2005的数据查询

    代码中,我们获取并清空了“开始点”、“结束点”以及查询所需其他字段的值,这些值将在构建SQL语句时用作条件。 例如,假设我们要查询“土地交易明细”表中出让面积在特定范围内的记录,我们可以构建如下SQL语句:...

    FineReport怎么进行表单设计.docx

    例如,创建数据集ds1,查询`SELECT * FROM 订单 WHERE 订单ID=${orderid}`,其中`orderid`参数的默认值设定为10001。这里的参数名需与下拉框控件的名称一致。 对于“订单ID”下拉框,设置控件名为"orderid",数据...

    html表单和数据完整性

    `GET` 方法会将表单数据附加在URL后面,适用于查询参数等简单场景;而`POST` 方法则将数据封装在HTTP请求体中,适用于敏感或复杂的数据传输。 - **`action`属性**:指定了处理表单数据的脚本或页面地址(URL)。当...

    上传文件fileupload+解决enctype= multipart/form-data无法传递其他参数

    7. **处理流程**:当用户提交包含文件的表单时,服务器端使用Commons Fileupload解析请求,获取每个部分的数据,然后对文件部分进行存储,对其他参数部分进行解码并处理。 8. **安全注意事项**:文件上传功能可能...

    form中的各种数据类型

    本文将深入探讨如何处理表单中的各种数据,并提供一系列实用的技术和策略。 #### 读取单个请求参数 (Reading Individual Request Parameters) 当用户提交一个表单时,服务器端可以通过特定的方法来读取这些参数。...

    获取ztree节点数据

    zTree是一款基于jQuery的树形控件,广泛应用于展示具有层次结构的数据集。在很多场景下,我们需要获取用户在界面上选择的节点信息,以便进行后续操作,如保存、删除等。 #### zTree简介 zTree是一款高度定制化的树...

    显示在表单中.docx

    一旦查询执行完毕,开发者可以通过遍历记录集并将数据绑定到表单中的域,将数据展示给用户。 总结来说,这个示例展示了如何利用ADO在VB环境中与Lotus Domino结合,实现对数据库的查询和数据的显示。通过理解ADO...

    jsp中在提交表单时的中文处理问题

    这行代码会将请求的编码设置为UTF-8,确保从请求中获取的参数都是按照UTF-8解码的。 4. 数据库存储:如果表单数据需要存入数据库,确保数据库的字符集支持中文,例如设置为`utf8_general_ci`或`utf8mb4_general_ci...

    avue-crud-数据字典(网络-dicUrl:返回数据格式data:)

    "avue-crud-数据字典(网络-dicUrl:返回数据格式data:)"涉及的知识点包括:avue框架的使用、CRUD操作、数据字典的概念、动态获取数据字典的网络请求以及返回的数据格式,以及初始化环境配置文件在项目中的作用和...

    Html表单和Server表单

    在服务器端,可以使用`Request`对象的`QueryString`、`Form`或两者通用的方式来获取表单数据。 例如,使用`Request.QueryString["控件名"]`获取GET方式提交的表单值,`Request.Form["控件名"]`适用于POST方式,而`...

    JSP获取TextArea中的值

    我们可以通过`request.getParameter()`方法来获取表单数据,参数是表单字段的名称,即TextArea的`name`属性: ```jsp ; charset=UTF-8" pageEncoding="UTF-8"%&gt; &lt;!DOCTYPE html&gt; 获取TextArea的值 提交表单...

    Vue 实现把表单form数据 转化成json格式的数据

    1. 定义数据集:创建一个Vue实例的数据属性,通过`v-model`绑定到表单元素。 2. 处理特殊类型数据:对于非简单文本输入的表单控件,如图片上传,需要编写额外的事件处理函数来收集数据。 3. 转换数据:使用`JSON....

    httpclient测试登录并提交表单功能

    - 添加表单参数(如"name")及其值。 - 使用`CONN`执行POST方法,并获取响应体。 - 判断响应体是否包含特定字符串("j_security_check"),以此判断是否成功提交数据。 - 返回是否成功提交的结果。 - **`...

    基于flask实现的前端数据集收集平台.zip

    Flask通过request对象可以获取到这些数据,包括POST请求中的表单数据和GET请求中的URL参数。 3. 数据处理: 收集到的数据通常需要进行预处理,如清洗、格式转换、去重等。这可以通过Python的pandas库或其他数据...

    extjs 前后台交互参数出现中文乱码问题的解决方法

    // 发送POST请求,并将编码后的中文参数拼接到URL中 conn.open("POST", "/SanXiaMS/servlet/AccountBookServlet1?CustomFormName=" + CustomFormName1, false); conn.send(null); // 获取服务器响应结果 var ...

    sql/查询修改删除翻页表单整合函数

    5. **分页显示**:`PageLoad()` 函数是表单打开时的初始化事件,用于设置初始的SQL查询(获取`chaxun2`表中的所有数据)和分页参数(每页显示2条记录)。此外,还有用于更新页面信息的辅助函数,如显示当前页数、总...

    JSP页面中文参数的传递(get和post方法分析)

    JSP页面中文参数传递是Web开发中非常常见且重要的知识点,尤其是在中日韩等使用非ASCII字符集的国家。在JSP中,参数通常通过GET和POST方法在页面之间传递,但是直接在URL中包含中文字符会导致问题,因为HTTP协议本身...

Global site tag (gtag.js) - Google Analytics