我想将所有JavaScript代码保存在一个部分中; 就body
在我的主布局页面中的结束标记之前,只是想知道最好的去做,MVC风格.
例如,如果我创建一个DisplayTemplate\DateTime.cshtml
使用jQuery UI的DateTime Picker 的文件,而不是将JavaScript直接嵌入到该模板中,那么它将在页面中间呈现.
在我的普通视图中,我可以使用@section JavaScript { //js here }
然后@RenderSection("JavaScript", false)
在我的主布局中,但这似乎不适用于显示/编辑器模板 - 任何想法?
\\code
public ActionResult mapPartial(DataTable dt)
{
string strEvents = "[";
foreach (DataRow row in dt.Rows)
{
strEvents += "[" + row["Lat"].ToString() + ", " + row["Long"].ToString() + ", " + "\"" +
row["LastName"].ToString() + row["DateOfBirth"].ToString() + "\"" + "],";
}
strEvents = strEvents.Remove(strEvents.LastIndexOf(","));
strEvents += "]";
ViewBag.locpoints = strEvents;
return PartialView(dt);
}
//in the partial view page
<script type="text/javascript">
function mapInit(Viewbag.locpoints) {
var arr = $.parseJSON(Viewbag.locpoints);
//more code which assigns a map to div map below
}
</script>
<div id="map" …
Run Code Online (Sandbox Code Playgroud) 我在head标签内部使用此JavaScript代码,以便使用浏览按钮填充div,以便用户可以上传图像(swfupload).
<head>
...
<script type="text/javascript">
var swfu = function() {
return new SWFUpload({
// Backend Settings
// settings go here...
// Too long to display here
// Debug Settings
debug: false
});
}
window.onload = swfu;
</script>
</head>
Run Code Online (Sandbox Code Playgroud)
....
<div id="swfu_container" style="margin: 0px 10px;">
<div>
<span id="spanButtonPlaceholder"></span>
</div>
<div id="divFileProgressContainer" style="height: 75px;"></div>
<div id="thumbnails"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
这很好用,但问题是当我尝试将此代码放在局部视图中时.到目前为止,我无法让这个工作.
有没有人更有经验的救援?
谢谢