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/

    评论

报告相同问题?

悬赏问题

  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题