easyUI combobox 从后台取数据显示(明确前后的需求)

在解决这个问题之前,我们需要先明确两个问题?

1.首先明确,定义在data-options(combobox中属性)中我们的"textFiled"和"valueFiled"需要从后台得到什么样的值?

2.在明确得到什么样的值之后,我们需要去通过怎么样的方式去得到前端需要的值?

在明确这两点之后,我现在来分享一下自己的方式:

1.它要得到的是键值对形式json格式的值:[{"catName":"果蔬类","id":2},{"catName":"母婴类","id":1}](注意它需要的是这样的,其他什么样的都不行)。

2.在知道这点之后我是通过JSONArray.toJSONString(集合);的方式直接返回的。

接下来分享一下代码:

<div class="fitem">
            <label>类别名:</label>
            <input id="catName" name="catName" class="easyui-combobox" data-options="textField:'catName',valueField:'id',url:ComboboxServlet,panelHeight:'auto',prompt:'请选择类别名'">
        </div>

其中input的各个参数解释:

type:text id : 自定义 name: 自定义 class: 一定要写easyui-combobox (重要)
data-options=” eaitable(是否可以编辑?)
valueField: 数据的键key(重要 )
textField:数据的值value(重要)
url:(请求后台的地址)(重要)
prompt:(提示信息)”
required:(校验)

servlet层:

private String getCombobox(HttpServletRequest req) {
        Connection conn = DButil.getConnection();
        String result = "";
        try {
            List<Category> getComboboxs = OtherDAO.getCombobox(conn);
            result = JSONArray.toJSONString(getComboboxs);
//            JSONObject json = new JSONObject();
//            json.put("getComboboxs",getComboboxs);
//            result = json.toString();
        } catch (SQLException e) {
            result = "{\"success\":false,\"msg\":\"获取操作执行错误,请联系开发商\"}";
            e.printStackTrace();
        }
        DButil.closeConnection(conn);
        return result;
    }

结果:

总结:这虽然只是我觉得最重要的学习不是解决了这个问题是有多重要,而是能够学到解决问题的方式,只有对症下药才能够有真正意义上对我们成长的收获。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值