我有一个自定义对象CustomvideoObject。我们将这个对象放在aspx页面中,它会在飞行中创建与video.js相关的标签。为了实现这一点,我在app_code文件夹中有类,我使用RegisterStartupScript方法将脚本注册到页面中。问题是它不会在我想要视频渲染的页面上添加div。
我有这样的代码:
var cstext = new StringBuilder();
// cstext.Append("<script type=\"text/javascript\" >");
cstext.Append("$(document).ready(function(){");
cstext.Append("$(\'#movie01_div\').html(\'");
cstext.Append("<video id=\"");
cstext.Append(Vdo.FileName);
cstext.Append("\"");
cstext.Append(" runat=\"server\"");
cstext.Append(" class=\"video-js vjs-default-skin\"");
cstext.Append(" controls");
cstext.Append(" preload=\"Auto\"");
cstext.Append(" width=");
cstext.Append("\"");
cstext.Append(Vdo.VideoWidth);
cstext.Append("\"");
cstext.Append(" height=");
cstext.Append("\"");
cstext.Append(Vdo.VideoHeight);
cstext.Append("\"");
cstext.Append(" poster= ");
cstext.Append("\"");
cstext.Append(Vdo.Poster);
cstext.Append("\"");
cstext.Append(" data-setup=\"{}\" >");
cstext.Append(" <source src=\"");
cstext.Append(Vdo.Url);
cstext.Append("\"");
cstext.Append(" type='");
cstext.Append(contentType);
cstext.Append("'");
cstext.Append(" />");
cstext.Append(" <track kind=\"captions\" src=\"");
cstext.Append(Vdo.CaptionsUrl);
cstext.Append("\"");
cstext.Append(" srclang=\"en\" label=\"English\" default ></track>");
cstext.Append(" </video>" ) ;
cstext.Append("')");
cstext.Append("});");
// cstext.Append("</script>");
cs.RegisterStartupScript(cstype, csname, cstext.ToString(), false);
当我运行页面时,它就像是:
$(document).ready(function(){$('#movie01_div').html('
video renders fine here..
')});
有人可以帮助我如何在div '#movie01_div'
中添加视频。我在页面的头部添加了jquery。
答案 0 :(得分:0)
要在JS中附加字符串,您可以执行以下操作:
var cstext = [
"<div id='somediv'>",
" <div class='header'></div>",
" <div class='body'></div>",
" <div class='footer'></div>",
"</div>",
].join("")
我认为应该大大清理上面的代码,以便更容易阅读/帮助推理这里可能出错的原因。
我也不确定RegisterStartupScript()
- 您使用什么语言发出客户端响应?以下是MSDN对此的说法:
Similar to the RegisterClientScriptBlock method, the RegisterStartupScript method
emits the script just before the closing tag of the Page object's <form runat= server>
element. Be sure to include opening and closing <script> elements around the script
block string specified in the script parameter.