javascript - 如何在 Wicket FeedbackPanel 的 info()/error() 方法上调用 Javascript 方法?

标签 javascript java wicket

如何从 Wicket 反馈面板方法(例如 info()error())调用 JavaScript 方法。

我想做的是,显示 MDLsnackbar对于 Wicket FeddbackPanelerror()/info() 方法。但要显示 snackbar ,我们必须调用 JavaScript 方法。我不知道该怎么做,尤其是在非 ajax 调用中。

最佳答案

您可以子类化 FeedbackPanel 并调用 renderHead(IHeaderResponse response) 中的 javascript

像这样:

   @Override
   public void renderHead(IHeaderResponse response) {
      super.renderHead(response);
      response.render(OnDomReadyHeaderItem.forScript("callFancyJs();"));
   }

无论是否使用 AJAX,这都会调用 javascript。

此外,如果您需要通过 JavaScript 中的类型访问 FeedbackMessage,我已将它们添加到 CSS 类中,我将其用于 bootstrap样式:

   @Override
   protected Component newMessageDisplayComponent(String id, FeedbackMessage message) {
      Component c = super.newMessageDisplayComponent(id, message);
      c.setEscapeModelStrings(false);
      String bootstrapClass = "text-info";
      switch (message.getLevel()) {
         case FeedbackMessage.ERROR:
            bootstrapClass = "text-danger";
            break;
         case FeedbackMessage.WARNING:
            bootstrapClass = "text-warning";
            break;
         case FeedbackMessage.SUCCESS:
            bootstrapClass = "text-success";
            break;
         case FeedbackMessage.FATAL:
            bootstrapClass = "text-danger";
            break;
         case FeedbackMessage.DEBUG:
            bootstrapClass = "text-danger";
            break;
         case FeedbackMessage.INFO:
            bootstrapClass = "text-info";
            break;
      }
      c.add(new AttributeAppender("class", bootstrapClass));
      return c;
   }

您可以使用此类来定位 JavaScript 中的反馈消息。

关于javascript - 如何在 Wicket FeedbackPanel 的 info()/error() 方法上调用 Javascript 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43050908/

相关文章:

javascript - 启动时的 jQuery 计数器完全加载页面

java - 所描述的 Web 应用程序开发方法有哪些风险?

java - Java中的重定向问题(Wicket)

java - Wicket 8 wicket setDefaultModel 与 setDefaultModel 冲突

java - 更改 GridBagLayout 中的网格大小

java - 带有 session 的 Wicket RestartResponseException

php - 加载 javascript 和 php 脚本时无法显示加载图像

javascript - Node JS 类实例化预期行为

javascript - 使用范围内的连续数字创建和填充数组的有效方法

java - 使用 PHP 对 Android Market 许可响应进行服务器端验证