4

我正在使用 dart-message https://github.com/mkozhukh/dart-message。它具有功能...

MessageBox(String text, String header, String css){
    _box = new DivElement();
    ...
    _box.onClick.listen(_clickHandler);

    if (header != null)
      html.write("<div class='dhtmlx_popup_title'>$header</div>");
    html.write("<div class='dhtmlx_popup_text'><span>$text</span></div>");
    html.write("<div class='dhtmlx_popup_controls'>");
  }

String addButton(String text, String result){
    if (html != null){
      html.write("<div class='dhtmlx_popup_button' result='$result' ><div>$text</div></div>");
    } else
      throw new Exception(".addButton must be used before .show"); 
  }

 _clickHandler(Event event){
    String result = event.target.attributes["result"];
    if (result == null)
      result = event.target.parent.attributes["result"];
    hide(result); //<=== ERROR result alway return null
  }

Future<String> show(){
    if (html != null){
      //finalize html initialization
      html.write("</div>");
      _box.innerHtml = html.toString();  //<===== ERROR after line : Removing disallowed attribute <DIV result="ok">
      html = null;
    }
...
}

...

如何将此代码更改为 SDK 0.7.1。非常感谢你。

4

1 回答 1

7

我改变了代码

_box.innerHtml = html.toString();

==>

_box.setInnerHtml(html.toString(), treeSanitizer : new NullTreeSanitizer());

它工作。

于 2013-09-06T04:25:45.267 回答