永发信息网

JavaScript:如何把方法作为参数传递

答案:4  悬赏:30  手机版
解决时间 2021-01-16 08:36
  • 提问者网友:回忆在搜索
  • 2021-01-16 04:48
function isUserRight(powerId,win) {<br>    Ext.Ajax.request({<br>        url: '../../../ASHX/IsUserRightMenu.ashx',<br>        method: 'post',  <br>        params: { PowerId: powerId, MenuId: MenuId }, <br>        success: function (response) {<br>            var respText = Ext.decode(response.responseText);<br>            switch (respText.success) {<br>                case true: {<br>                    //window.parent.addEmployeeWin();//只有这句代码不一样,其他代码都是一样的<br>                    win();<br>                    break;<br>                }<br>                default: alert(respText.msg);<br>            }<br>        },<br>        failure: function (response) {<br>            alert(&quot;数据未执行&quot;);<br>        }<br>    });<br>}<br>调用:<br> isUserRight(this.id,window.parent.addEmployeeWin());// 这样调用,不管switch判断ture还是false都是执行addEmployeeWin()方法<br>问题:如何只改变switch为ture时里面的方法,因为只有那句代码是不一样的,其他的都一样
最佳答案
  • 五星知识达人网友:琴狂剑也妄
  • 2019-05-27 23:19
应该是传入 isUserRight(this.id,window.parent.addEmployeeWin);

你这样传 window.parent.addEmployeeWin()
然后 win() 不是执行两次? window.parent.addEmployeeWin()()
这样 判断为ture 时候就 踩执行 win() 而不是传参时候就调用了一遍
全部回答
  • 1楼网友:拾荒鲤
  • 2020-03-15 18:32
这肯定要用ajax的。。不然联动的combox怎么取数据?肯定取你后台的数据呀。。。。 如果你全部前台都写死的话。我到是可以给你写个。。。如果用ajax写。。我没这么多时间。。你自己用dwr吧这个简单 心情不好给你写写东西吧写一个不是ajax调后如何用javascript把输入框中的内容作为参数传递到j
  • 2楼网友:夜风逐马
  • 2020-02-18 19:28
1、定义二个方法<br>function k1(){//定义一个函数k1<br>   alert('k1');<br>}<br>function k2(p){//定义一个函数k2,参数为方法<br>   p();//执行参数表示的函数<br>}2、k1作为参数,传递到k2中<br>k2(k1);//把k1作为参数传入到k2中,这里执行后会弹出 &quot;k1&quot;
  • 3楼网友:时间的尘埃
  • 2019-03-09 07:17
isUserRight(this.id,window.parent.addEmployeeWin() ); addEmployeeWin后面不能有那对括号,有括号就表示调用addEmployeeWin,并把函数的返回结果传给了IsUserRight.
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯