我的表格上有一个jhtmlarea textarea
textarea id="txtDigital" name="txtDigital" class="form-control" style="background-color:white; resize: vertical !important; "
rows="20" placeholder="Details" runat="server"></textarea>
在javascript中设置了以下内容:
$(document).ready(function () {
$(function () {
$("#<%=this.txtDigital.ClientID%>").htmlarea({
toolbar: [
["bold", "italic", "underline", "strikethrough"],
["increasefontsize", "decreasefontsize", "forecolor"],
["orderedList", "unorderedList", "superscript", "subscript"],
["indent", "outdent", "justifyleft", "justifycenter", "justifyright"]
]
});
});
});
在我添加ASP.NET UpdatePanel之前工作正常 - textarea位于updatepanel内部,当页面加载时,它只是作为普通的textarea加载。我使用Firebug进行操作,代码确实运行,但是在我怀疑UpdatePanel刷新之后没有。删除updatepanel允许它按预期加载为jhtmlarea。
当我显示textarea时,我尝试将相同的代码作为函数调用,并且它正确格式化为jhtmlarea,但是,当我检查页面时,我禁用了一些我无法看到的内容。
我很感激任何帮助让它在UpdatePanel中工作。
由于
答案 0 :(得分:1)
这是一个不调用jquery事件的部分回发的问题,你需要在PostBack之后重新绑定jquery。你需要一个命名函数并将其作为endRequest
回调传递给浏览器放弃控制{{1被调用
demo()
现在在function demo()
{
$("#<%=this.txtDigital.ClientID%>").htmlarea({
toolbar: [
["bold", "italic", "underline", "strikethrough"],
["increasefontsize", "decreasefontsize", "forecolor"],
["orderedList", "unorderedList", "superscript", "subscript"],
["indent", "outdent", "justifyleft", "justifycenter", "justifyright"]
]
});
}
$(document).ready(demo);
ScriptManager