hookPreview: (tab, textarea) ->
$(tab).bind "click", preview($(textaread).val()) ->
false
当然它没有按预期行事:preview(...)
不是一个功能。 documentation没有指出我可以将参数传递给preview
的方法。
修改:
bootstrap的标签控件也有问题:
<ul class="nav nav-tabs">
<li role="presentation" class="active"><a href="#edit" data-toggle="tab" id="edit-tab">Edit</a></li>
<li role="presentation"><a href="#preview" data-toggle="tab" id="preview-tab">Preview</a></li>
</ul>
<!-- panel for tabs -->
<div class="tab-content">
<div class="tab-pane active" id="edit">
<!-- textarea -->
</div>
<div class="tab-pane" id="preview">PREVIEW</div>
</div>
hookPreview
存在标签无法切换,但新处理程序未绑定时很好。但是,在控制台中没有错误。
答案 0 :(得分:1)
这里黑暗中的大刺......你想在preview
事件中调用textaread
函数click
?然后:
hookPreview: (tab, textarea) ->
$(tab).bind "click", preview.bind null, $(textaread).val()
这将在绑定事件处理程序时读取textaread
的值。它还会返回preview
次返回,而不是false
。要a)return false
和/或b)在触发事件时读取textaread
的值,写一个简单的回调包装器:
hookPreview: (tab, textarea) ->
$(tab).bind "click", ->
preview $(textaread).val()
return false
答案 1 :(得分:0)
将$(textaread).val()
部分放入preview
函数的括号中会导致调用函数,而不是定义它,因此失败,因为函数尚未定义。
然而,在将值作为参数传递时,我没有任何意义 - 为什么不在事件处理程序触发时获取它:
hookPreview: (tab, textarea) ->
$(tab).bind "click", preview() ->
textValue = $(textaread).val()
return false