javascript - 在 jquery 中的 cakephp 2.x 中创建下载链接
问题描述
我必须创建动态 html 下载链接,但我在 jquery 部分中获得了文件名和文件夹名称。那么如何将 $id 和 $filename 从 jquery 传递到输入字段,或者是否有任何其他方式直接在 jquery 中使用 cakephp 创建动态 html 链接。?
<td class="broucher">
</td>
我试图为此使用 Jquery,但它不起作用并且出现意外的标识符错误。
var html='';
var filename=ui.item.brouchersFile;
var id=ui.item.brouchersId;
html = '<?php echo $this->Html->Link("",array("controller"=> "download","action"=>"brochures",${id},${filename}),array("class"=>"fa fa-download fa-fw","download"=>${filename},"title"=>"Download")); ?>' ;
$(elmt).find(".broucher").append("<span class='msgspan'>${html}</span>");
解决方案
您可以定义隐藏字段来访问基本 url,然后在 jquery 中使用相同的字段为您想要的操作创建链接。
$this->Form->input('webroot', ['type' => 'hidden', 'id' => 'webroot', value=>$this->request->webroot]);
然后在你的jquery中使用它,如下所示
var html='';
var filename=ui.item.brouchersFile;
var id=ui.item.brouchersId;
var webroot= $("#webroot").val();
html = '<a href="'+webroot+'/download/brochures/'+id+'/'+filename+'" class="fa fa-download fa-fw" download>Download</a>';
$(elmt).find(".broucher").append("<span class='msgspan'>"+html+"</span>");
推荐阅读
- android - 如何判断密钥是否支持硬件?
- python - 使用字符串中的逻辑表达式过滤 QTableWidget
- c - 我尝试使用 lua_sethook 通过协程在 Lua Api 中实现多线程
- css - CSS + 关键帧:如何改变动画速度?
- okhttp3 - java.io.InterruptedIOException:使用okhttp3删除时中断
- python-3.x - 填充列内的间隙并按数字拆分列
- javascript - 反应构建不执行 index.htm 中的脚本
- c# - 闪烁编辑器多语法突出显示
- php - 从文本框中拆分逗号分隔的输入并将其转换为数组
- html - 如何在浏览器页眉/页脚消失时处理移动视口更改?