easyui使用combobox报错Uncaught TypeError: row[opts.textField].toLowerCase is not a function

本文解决了一个关于easyui combobox的常见错误,即当输入的值不是字符串类型时,程序会抛出类型错误。通过确保所有输入值都是字符串类型,可以避免此问题。文章提供了具体的代码示例,展示如何将从后台获取的数据转换为字符串类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天发现使用easyui combobox,报错,如下图:

jquery.easyui.min.js:14329 Uncaught TypeError: row[opts.textField].toLowerCase is not a function
    at HTMLSelectElement.filter (jquery.easyui.min.js:14329)
    at jquery.easyui.min.js:13979
    at Function.map (jquery.min.js:2)
    at _a76 (jquery.easyui.min.js:13972)
    at HTMLSelectElement.query (jquery.easyui.min.js:14298)
    at jquery.easyui.min.js:13537
filter @ jquery.easyui.min.js:14329
(anonymous) @ jquery.easyui.min.js:13979
map @ jquery.min.js:2
_a76 @ jquery.easyui.min.js:13972
query @ jquery.easyui.min.js:14298
(anonymous) @ jquery.easyui.min.js:13537
setTimeout (async)
_a1f @ jquery.easyui.min.js:13532
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3

 

百度了一下,发现,如果combobox能输入并且可选,必须保证输入的值为string类型的,不然就会报错,将从后台传回的值全部转换成string类型的即可,下面是我写的代码。

 

$.ajax({
    type:'get',
    url:'xxxxxxx',
    async:true,
    success:function(data){
        var data_list = []
        for(d in data){
            data_list.push({"id":data[d]["id"].toString(),"text":data[d]["text"].toString()})
        }
       $("#filter_value").combobox("loadData", data_list);
       $("#mul_filter_value").combobox("loadData", data_list);
       $("#bet_filter_value").combobox("loadData", data_list);
    }
});

转载于:https://my.oschina.net/u/2440810/blog/1631001

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值