当你想从控制器向视图对应的js文件传参,你就需要用到这个能力了。
使用场景
我需要在新增对应的add.js中默认设置下拉框值的时候,就需要在add.js绑定事件之前把想要的数据从控制器中带出来。
控制器代码
//穿透传参 资金文件id
$this->assignconfig('fundfile_id', input('ids'));//用这种方式把业务数据传过去
js代码
//资金文件id,用于默认资金文件名称
let fundfile_id = Config.fundfile_id;//这里取传过来的数据
//这里进行延迟查询并显示
//ajaxSlowFunction这个方法只是起个延迟加载的作用,因为这样不会报错,你能接受报控制台报错的话,可以使用settimeout延迟
$.post('Fundfileamount/ajaxSlowFunction',{},function (res) {
//默认资金文件名称
//设置SelectPage数据
$('#c-fundfile_id').val(fundfile_id);
//刷新SelectPage
$('#c-fundfile_id').selectPageRefresh();
},'json');
//使用settimeout延迟达到默认选中下拉框, (这样写也能达到效果,只是浏览器控制台会报错,不影响业务运行)
setTimeout(function(){
//默认资金文件名称
//设置SelectPage数据
$('#c-fundfile_id').val(fundfile_id);
//刷新SelectPage
$('#c-fundfile_id').selectPageRefresh();
},2000);
END