X5中Grid列表中的下拉列表

grid(列表中下拉框设置)

grid列回调时使用下拉列表(将概念中的属性fF2的type设置为html并加上该属性的onRender事件):

function grdMainFF2Render(event){
 //数据来自常量的参数配置中
 var fF2 = pmcCoreSystem.getConstValue("fF2");
 return pmcCoreSystem.bindGridCellAsComboBoxWithBaseCodeType(event.cell, event.value, "P000", null);

 //2数据来自某个概念模型中
 var sqlCmd = {
  dataModel: "/system/data",
  valueTemplate: "[this.a]-[this.b]",
  nameTemplate: "[this.b]---[this.c]",
  sql: "select sid as a, sname as b,scode as c from sa_opperson where rownum < 5",
  mapping: "a,b,c"};
 return pmcSystem.bindGridCellAsComboBoxForSQL(event.cell, event.value, sqlCmd, {toggle: true});
 
 //3数据来自静态数据,title:中的内容是下拉框中通的提示信息
 return pmcSystem.bindGridCellAsComboBox(event.cell, event.value, function(){
  return [{name: "是", value: "1", title: "您同意"}, {name: "否", value: "2", title: "您不同意"}];
 }, null);
 
 //4数据来自静态数据
 return pmcSystem.bindGridCellAsComboBox(event.cell, event.value, "1=是,2=否", null);
}


这是bind任意内容的函数:

return pmcSystem.bindGridCellHTMLComponent(event.cell, event.value, function(container, onSetValue){
  var ipt = document.createElement("INPUT");
  ipt.__onValueChanged = function(value, onGetValueByColId){
   this.value = value;
  };
  ipt.onblur = function(){
   onSetValue(this.value);
  };
  container.appendChild(ipt);
  return {onValueChanged: ipt.__onValueChanged, context: ipt};
 });

更正:

//5---
 return pmcSystem.bindGridCellHTMLComponent(event.cell, event.value, function(container, value, onSetValue){
  var ipt = document.createElement("INPUT");
  ipt.__onValueChanged = function(value, onGetValueByColId){
   this.value = value;
  };
  ipt.onblur = function(){
   onSetValue(this.value);
  };
  container.appendChild(ipt);
  return {onValueChanged: ipt.__onValueChanged, context: ipt};
 });

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用 HTML 的 `<select>` 和 `<option>` 标签来创建二级下拉列表。下面是一个简单的示例代码: ```html<form> <label for="cars">选择汽车品牌:</label> <select id="cars" name="cars"> <option value="">请选择品牌</option> <option value="audi">奥迪</option> <option value="bmw">宝马</option> <option value="mercedes">奔驰</option> </select> <br> <label for="models">选择汽车型号:</label> <select id="models" name="models"> <option value="">请选择型号</option> </select> </form> ``` 上述代码,第一个 `<select>` 标签用于选择汽车品牌。当选择某个品牌时,通过 JavaScript 可以动态生成对应的汽车型号选项。下面是一个使用 JavaScript 动态生成选项的示例代码: ```html<script> var carModels = { audi: ["A1", "A3", "A4"], bmw: ["X1", "X3", "X5"], mercedes: ["C-Class", "E-Class", "S-Class"] }; var carBrands = document.getElementById("cars"); var carModelsDropdown = document.getElementById("models"); carBrands.addEventListener("change", function() { var selectedBrand = carBrands.value; carModelsDropdown.innerHTML = ""; // 清空之前的选项 if (selectedBrand !== "") { // 根据选择的品牌生成对应的型号选项 var models = carModels[selectedBrand]; for (var i =0; i < models.length; i++) { var option = document.createElement("option"); option.text = models[i]; option.value = models[i]; carModelsDropdown.appendChild(option); } } }); </script> ``` 上述 JavaScript代码,当选择汽车品牌时,会根据选择的品牌动态生成对应的型号选项,并将其添加到第二个 `<select>` 标签。 这只是一个简单的示例,你可以根据自己的需求对代码进行修改和扩展。希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值