2

我是新手,想在我的项目中实现以下功能:

页面中有一个“删除”链接,当用户点击它时,会出现一个带有“你确定要删除吗?”的确认信息。如果用户点击“是”,它将在服务器端进行AJAX调用删除某些内容,然后显示“操作完成”的通知,3秒后,页面将重新加载。

如何在电梯中实现这一点?我搜索了很多,但没有找到正确的示例。

我现在只能这样做:

SHtml.a( ()=>Confirm("are you sure to delete", ???), "delete" )
4

2 回答 2

4

最简单的方法是将 与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它来调用它。

于 2013-05-13T03:03:38.347 回答
0

使用响应式网络

            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

于 2013-05-13T07:03:05.813 回答