WebForm Combox下拉框联动

要想实现如下效果,点击堆号,下边的物料框自动对应显示,实现简单的联动,一对一,一对多的效果。

在这里插入图片描述

首先两个下拉框分别对应两个表数据,两表通过堆号字段关联

为堆号下拉框进行url赋值,
添加onChange方法,用来解决切换时动态改变物料下拉框,
添加onLoadSuccess方法,当堆号下拉框加载数据,并赋值成功后,默认选择对应多条物料的第一条。(在编辑和新增时,极易出现问题。)
var data = $mater.combobox(“getData”);
$mater.combobox(“setValue”, data[0].MaterialID);
注意写法,不然编辑时存入到数据库的 主键和描述 出现错误。

另外编辑和添加的dialog都用的是一个,所以字段名要和datagrid的名称对应。点击编辑某一行时,弹出dialog,数据依次赋值并显示,点击新增时,弹出dialog,数据清空。

//堆号和物料关联
function Heapnumber_MaterialID() {
    var $heap = $("#Heapnumber"); //堆号下拉列表
    var $mater = $("#MaterialID"); //物料下拉列表
    var cc = '';
    $heap.combobox({
        url: '../ashx/EasyUiAshx/SPBalloutplanHandler.ashx?action=select&&option=HeapnumberIDcombox',
        valueField: 'Heapnumber',
        textField: 'Heapnumber',
        panelHeight: 'auto',
        editable: false,
        onChange: function (newValue, oldValue) {
            if (newValue != "") {
                cc = newValue;
                $mater.combobox({
                    disabled: false,
                    url: '../ashx/EasyUiAshx/SPBalloutplanHandler.ashx?action=select_Material&&option2=' + newValue,
                    method: 'GET',
                    valueField: 'MaterialID',
                    textField: 'MaterialDes',
                    panelHeight: 'auto',
                    editable: false,
                    onLoadSuccess: function () {
                        var data = $mater.combobox("getData");
                        $mater.combobox("setValue", data[0].MaterialID);
                        //注意赋值的方法,很重要。
                    }
                });
            }
        },
        onLoadSuccess: function () {

            var AA = $("#Heapnumber").combobox('getValue');
            //编辑的时候有值,新增的时候无值。
            if (AA != "") {
                $mater.combobox({
                    disabled: false,
                    url: '../ashx/EasyUiAshx/SPBalloutplanHandler.ashx?action=select_Material&&option2=' + AA,
                    method: 'GET',
                    valueField: 'MaterialID',
                    textField: 'MaterialDes',
                    panelHeight: 'auto',
                    editable: false,
                    onLoadSuccess: function () {
                        var data = $mater.combobox("getData");
                        $mater.combobox("setValue", data[0].MaterialID);
                    }
                });
            }


        }
    });

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值