我有一个带有表单的Rails应用程序。表单的文本区域如下:
<div class="controls">
<textarea class="text-field" name="some_model[some_attribute]" rows="5" id="some_id"></textarea>
</div>
页面上某处有一个div id:
<div id="preview"></div>
我希望用户看到他输入的预览,输入html被解释。因此,我有一个Coffeescript执行以下操作:
$ ->
$("#some_id").keyup (event) ->
preview = $("#preview")
if event.currentTarget.value.length > 0
preview.children().remove()
prevContatiner = $("<a />")
prevContatiner.attr "href", "#"
prevContatiner.attr "rel", "tooltip"
prevContatiner.attr "title", "HTML output"
prevContatiner.attr "data-animation", false
prevContatiner.attr "data-html", true
prevContatiner.attr "data-placement", "top"
prevContatiner.attr "data-content", event.currentTarget.value
prevContatiner.attr "id", "preview-text"
preview.append(prevContatiner)
showMe = $("#preview-text").popover()
showMe.popover('show')
else
preview.children().remove()
这很好用,所以现在出现一个漂亮的小预览弹出窗口。但是,我想移动预览弹出窗口,使其显示在文本框的正上方。接下来是我的挑战:
如果我更换此行:
preview = $("#preview")
这一行:
preview = $("#some_id")
然后弹出窗口不再起作用了。
有谁能告诉我我错过了什么?文本区域不是可以分配到弹出窗口的有效div吗?