hyf_325324 2019-12-11 11:30 采纳率: 0%
浏览 276

datagrid生成的表格,欲把某一列的所有行都设置为下拉列表的形式;内容从后台数据库中读取;静态加载数据可行,动态加载数据下拉列表出不来

```<!-- var colData=[{id:'高',projectName:'高','selected':'true'},{id:'中',projectName:'中'},{id:'低',projectName:'低'},{ id: "操作错误", projectName: "操作错误" }, { id: "滥用授权", projectName: "滥用授权" },{ id: "身份假冒", projectName: "身份假冒" },{ id: "安全漏洞", projectName: "安全漏洞" }, -->

///////上面注释掉的代码是我尝试静态加载的语句,////下面的代码是我ajax请求的代码
var colData=[];
console.log(typeof colData);
$.ajax({
type:"POST",
url:"./php/read_from_db2.php",
dataType:"json",
async:false,
data:{},
success:function(data){
console.log(data);
colData = [];
data.forEach(ele => {
var obj = {
id:ele,
projectName:ele,
selected:true
};
colData.push(obj);
});
console.log(colData);
},
async:true,
error:function(){
alert("请求失败");
},
});
//////下面的代码为我想要设置的列
{field:'关联威胁',title:"关联威胁", width:140,align:'center',editor: {
type:'combobox',
options: {
valueField:'id',
textField:'projectName',
panelHeight:'auto',
data:colData//这里是我定义的全局变量,将它传给options的data
}}},

  • 写回答

1条回答 默认 最新

  • 张无叽叽 2023-04-12 15:40
    关注

    你的问题是关于如何将生成的表格中的某一列的所有行都设置为下拉列表的形式,并且从后台数据库中读取数据。你尝试了静态加载数据的方法,但是动态加载数据时下拉列表出不来。你使用了ajax请求从后台数据库中获取数据,并将获取到的数据赋值给一个全局变量colData。你想要将这个colData传递给下拉列表的options中的data属性。我的建议是,你需要在ajax请求成功后再去设置下拉列表的options属性,因为ajax请求是异步的,需要等待数据返回后再去渲染下拉列表。
    https://cool-js.com/

    评论

报告相同问题?

悬赏问题

  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建