为了账号安全,请及时绑定邮箱和手机立即绑定

Jquery中change方法里传递对象 但是只调用了一次?

Jquery中change方法里传递对象 但是只调用了一次?

凤凰求蛊 2019-03-21 18:15:13
我想给一个下拉框赋值:      <div class="input-control text full-size" data-role="input">                            <select id="storageInfo" name="storageInfo">                            </select>                        </div>Js: //采购change查询库房信息                $("#purchaseEmp").bind("change", function () {                    /**                     * 查询采购员所对应的库房                     */                    $.ajax({                        url: "/DemandPlan/Instock/SelectStorageWithEmp/",                        dataType: 'JSON',                        data: {                            sys_emp_id: $("#purchaseEmp").val().split(',')[0]                        },                        type: 'POST',                        success: function (resp) {                            if (resp.res != "Failure") {                                $("#storageInfo").empty();                                if (resp.res.length == 0) {                                    $("#storageInfo").append("<option value='none'>请配置库房...</option>");                                }                                $(resp.res).each(function (i, c) {                                    $("#storageInfo").append("<option value='" + c.wl_storage_id + "," + c.wl_storage_name + "'>" + c.wl_storage_name + "</option>");                                    // $("#UpdateDeptInfo").append("<option value='" + c.sys_dept_id + "," + c.dept_name + "'>" + c.dept_name + "</option>");                                });                                $("#storageInfo").select2();                                // $("#UpdateDeptInfo").select2();                            } else {                                console.log(resp.Msg)                            }                        }                    });                });这样写是没问题的,但是我声明了一个方法然后传入到里面,这样写,下拉框的change事件只会执行一次,然后就没有效果了。请告知为什么会这样?
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

应该是:


$("#purchaseEmp").change(function() {

    // 函数调用

    selectPurchaseEmp(...);

});

如果 selectPurchaseEmp 没有参数的话,可以是:


$("#purchaseEmp").change(selectPurchaseEmp);


change() 的参数是一个函数


但你传入的 change(selectPurchaseEmp(...)) 不是selectPurchaseEmp这个函数,而是 selectPurchaseEmp(...) 的返回值


查看完整回答
反对 回复 2019-04-10
  • 1 回答
  • 0 关注
  • 272 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信