Вы должны удалить теги <text>
из вашего скрипта, чтобы представление выглядело так:
<p>
<div id="map_canvas2" style = "width:100%; height:100%">
result from Javascript
</div>
</p>
<script type="text/javascript">
$(document).ready(function() {
$('#map_canvas2').text(HolaMundo());
});
</script>
Тег <text>
используется интерпретатором Razor для обозначения литерального значения, которое будет отображаться как есть без обработки. Это полезно, когда вы смешиваете код на стороне сервера с разметкой или сценарием на стороне клиента. Например:
<script type="text/javascript">
$(document).ready(function() {
@if (Model.IsFooBar)
{
<text>$('#map_canvas2').text(HolaMundo());</text>
}
});
</script>
Также убедитесь, что раздел, который вы определили в вашем Index.cshtml
представлении:
@section JavaScript
{
<script src="@Url.Content("~/Scripts/Maps.Helper.js")" type="text/javascript"></script>
}
вы должны убедиться, что он зарегистрирован где-то в вашем _Layout.cshtml
. Например, в <head>
. Также убедитесь, что вы включили скрипт jQuery на свою страницу:
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
@RenderSection("JavaScript")
</head>
...
или даже лучше перед закрывающим тегом </body>
, где рекомендуется размещать скрипты, чтобы не блокировать загрузку DOM браузером при их извлечении:
...
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
@RenderSection("JavaScript")
</body>
</html>