首先感谢funnyque 大佬写出了这么好用的插件,解决了我多文件上传的问题。
但是这个插件 我发现只能通过 formparam 静态传参。
我这里有个业务场景:
获取datagrid的选中行的主键id,将文件上传后, 通过选择的主键id 保存文件名称和文件路径到数据库。
如何获取到动态传参呢? 我在百度上翻阅无果之后,只有硬着头皮翻源码了。
在292行 发现了formparam的赋值代码。 我们修改它。
这里可以通过硬编码的方式强行修改 formparam里的 key 对应的value值 。(我的formparam 里的key名字叫 objId)
但是这样太死板了。把id选择器的id写死了, 其他datagrid页面不好弄。
正文(嫌啰嗦的直接翻到这里复制代码就好了)
=========================================
于是我在formparam中加了 gridId 参数 ,用来传输 ID选择器的 id名
然后再刚才把刚才写死的那段取值代码 $('#need-datagrid').datagrid('getSelected')
改成动态的 $('#' + $idSelected ).datagrid('getSelected') 。
这样的话easyui 动态传参就完成了。
代码 , 在页面上easyui js控件中
然后 打开 easyUpload.js 。大概在292行,把整个 if (option.formParam) { } 的判断条件改成下面的代码。注意那个 ‘objId’ 是我formparam中的值,你们改成你自己的。改好之后运行项目,大功告成。