extjs中Ext.Ajax.request同步请求和异步请求

本文探讨了在ExtJS框架中使用Ext.Ajax.request进行同步请求的必要性,特别是在需要确保请求完成后才能继续执行后续代码的情况下。通过示例代码解释了如何将请求设置为同步,并展示了如何处理响应数据。

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

用Ext.Ajax.request请求默认是异步请求,这就导致定义的对象无法识别,没有定义,因此需要将请求方式改为同步。请看代码。

function showFormPanel(){
	if(centerPanel.getSelectionModel().hasSelection()){
        var records = centerPanel.getSelectionModel().getSelection();
        if(records.length == 1){
            var record = records[0];
            if(record.data.roleid != ''){
            	Ext.Ajax.request({
				    url: 'getFidByRoleid',
				    async:false,//false同步,true异步
				    params: {
				        roleid: record.data.roleid
				    },
				    success: function(response){
				        var text = response.responseText;
				        console.log(text);
				        var data = JSON.parse(text);
				        console.log(data.roleMenus[0].roleid);
				        updateQxzWin.setVisible(true);
				    }
				});
            }

        }else{
            Ext.Msg.alert('提示', '不能同时处理两个业务');
        }
    }else{
        Ext.Msg.alert('提示', '请选择具体业务信息');
    }
}

在这个代码中,若将async设置成true,则success中updateQxzWin就会是没有定义,所以需要设置为同步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值