在我的Yesod项目中,我有以下路线:
/api/hide/thread/#Text/#Int ApiHideThreadR GET
我想在客户端请求它与javascript:
function hideThreadCompletely(threadId,board) { $.getJSON("/api/hide/thread/"+board+"/"+threadId,function(data) { $('#thread-'+threadId).hide(); }); }
但是我不能使用@ {ApiHideTHreadR},因为Yesod需要编译时的参数.如果我想要API URLS看起来像api / board / 1/1,而不是api / board?bid = 1& tid = 1,那么这是什么正确的解决方案?继续使用手动定义的URL,如“/ api / hide / thread /”board“/”threadId?
解决方法
经过一些搜索,我发现这个
discussion,在那里建议你添加url作为一个“data-url”属性到一些元素.然后从元素加载url.
这样的事情
这样的事情
<div id="thread-1" data-hide-url=@{ApiHideTHreadR}> var url = $("#thread-1").data("hide-url")
原文地址:https://www.jb51.cc/ajax/154107.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。