0

我有一个动态创建的 Ember 视图,这些视图是从存储在数据库中的一些子部分连接起来的。我还使用 Jsoup 来修改模板以包含其他一些非 Ember 部分。不幸的是,当我存储的 ember 部分以常见的方式包含属性绑定时:

<li {{bindAttr class="isCompleted:completed isEditing:editing"}}>

Jsoup 试图通过添加空引号来“修复”它们,这当然是预期的行为:

<li {{bindattr="" class="isCompleted:completed isEditing:editing" }}="">

有什么方法可以绑定属性,即。通过将其包装在一些有效的 HTML 中,
即。喜欢data-ember='{{bindAttr "something"}}'或至少是一种防止 Jsoup 发生这些变化的方法?

4

1 回答 1

0

这里的问题是(正如您肯定已经知道的那样)Jsoup尝试HTML使用包含的把手表达式解析您的标记,并通过这样做检查 valid HTML,因此在这种情况下bindAttr被解释为您的<li>标记的属性,并且因为有效属性类似于class="foo"Jsoup 将其转换为bindAttr="".

遗憾的是,没有内置的方式告诉 Jsoup 忽略没有值的标签。我想您应该尝试另一种适合您需求的工具。

希望能帮助到你。

于 2013-09-05T08:34:20.767 回答