使用RiotJS我创建了一个简单的元素,其中包含一个contenteditable div供用户修改(myFunction将根据某些条件设置它)。
现在我希望在我的网站的开头和结尾都有这个元素,并且它们应该保持彼此同步......这有可能吗?
如果没有,是否可以进行单向数据绑定(顶部元素中的修改将显示在底部,但不一定反之亦然)?
或者也可以简单地在底部显示文字(不可编辑,而不是使用相同的暴乱元素)......
RiotJS元素:(代码功能到目前为止,在这段代码中可能会有一些小错误,因为它是我工作的减少和略微修改的版本: - )
<my-element>
<div id="content" contenteditable="true" onkeyup="{myFunction}">{editableText}</div>
<style>...</style>
<script>
this.editableText = opts.text
... // more content
</script>
</my-element>
以HTML格式安装:
<html>
<!-- start of page content -->
<my-element></my-element>
<script src="{%=URL(r=request,c='static/js/riot',f='my-element.tag')%}" type="riot/tag"></script>
{%element_text_or_empty = XML(T(someText.content)) if someText else ''%}
<script>
var textToUse = "{%=element_text_or_empty%}";
riot.mount('my-element', {text: textToUse})
</script>
<!-- more content -->
<!-- repeat my-element with same (edited) content as above -->
<!-- what to write here? -->
</html>
注意:我使用的是web2py框架,其中
{%element_text_or_empty = XML(T(someText.content)) if someText else ''%}
部分来自。
答案 0 :(得分:0)
我不知道这是否是唯一的问题,但是:
var textToUse = "{%element_text_or_empty%}";
应该是:
var textToUse = "{%=element_text_or_empty%}";
请注意缺少&#34; =&#34;。