我是新手,想在我的项目中实现以下功能:
页面中有一个“删除”链接,当用户点击它时,会出现一个带有“你确定要删除吗?”的确认信息。如果用户点击“是”,它将在服务器端进行AJAX调用删除某些内容,然后显示“操作完成”的通知,3秒后,页面将重新加载。
如何在电梯中实现这一点?我搜索了很多,但没有找到正确的示例。
我现在只能这样做:
SHtml.a( ()=>Confirm("are you sure to delete", ???), "delete" )
最简单的方法是将 与SHtml.ajaxInvoke
结合使用JsCmds.Confirm
。它将创建一个服务器端函数并返回一个带有 functionId 和JsCmd
. 所以,这样的事情应该做你想做的事情:
SHtml.a( () => {
JsCmds.Confirm("Are you sure you want to delete?", {
SHtml.ajaxInvoke(() => {
//Logic here to delete
S.notice("Operation complete")
JsCmds.After(3 seconds, JsCmds.Reload) //or whatever javascript response you want, e.g. JsCmds.Noop
})._2
})
}, "delete")
在上面 - 单击链接将触发确认。如果您选择确定,那么它将向您的函数发出 ajax 调用并显示通知。您可以在任何SHtml
需要JsCmd
.
如果您想在超时后重定向页面,您可以编写一个客户端 javascript 函数来执行您需要的操作并使用JsCmds.Run
它来调用它。
使用响应式网络:
confirm("Are you sure you want to do that?") {
case true =>
// handle yes, if so desired
case false =>
// handle no, if so desired
}
请参阅 scaladocs:http: //reactive-web.tk/reactive-web-api/#reactive.web.package