MVC3 Razor:从视图调用javascript函数
我是MVC3 Razor的新手,希望在视图(index.cshtml)上显示运行时间。 我使用一个javascript函数并将其放入_Layout.cshtml中,以便所有其他“主”视图都可以使用它(请参见下面的代码片段)MVC3 Razor:从视图调用javascript函数,javascript,asp.net-mvc-3,razor,Javascript,Asp.net Mvc 3,Razor,我是MVC3 Razor的新手,希望在视图(index.cshtml)上显示运行时间。 我使用一个javascript函数并将其放入_Layout.cshtml中,以便所有其他“主”视图都可以使用它(请参见下面的代码片段) @视图包。标题 var uhr=新日期(); var minuten; var stunden; var sekunden; var区间=500; 功能基准(id){ uhr.setTime(uhr.getTime()+间隔); setTimeout(函数(){datum(
@视图包。标题
var uhr=新日期();
var minuten;
var stunden;
var sekunden;
var区间=500;
功能基准(id){
uhr.setTime(uhr.getTime()+间隔);
setTimeout(函数(){datum(id)},interval);
分钟=uhr.getMinutes();
stunden=uhr.getHours();
sekunden=uhr.getSeconds();
如果(分钟数<10){分钟数='0'+分钟数;}
如果(sekunden<10){sekunden='0'+sekunden;}
如果(stunden<10){stunden='0'+stunden;}
document.getElementById(id).innerHTML='Jetzt-ist:'+stunden+':'+minuten+':'+sekunden;
}
我的问题是:
1.如何从index.cshtml调用此函数(例如,datum(“uhr”)?我的尝试(见下文)无效:
@section SideBar {
<p>
<ul>
<li><a href="Index.cshtml">Add Job</a></li>
<li><a href="About.cshtml">About</a></li>
</ul>
</p>
<p>
The time is: datum("uhr");
</p>
}
@节侧栏{
时间为:基准(“uhr”);
}
Thx提前。基准函数的最后一行应该返回时间,而不是设置innerHTML:
return 'Jetzt ist: ' + stunden + ':' + minuten + ':' + sekunden;
您的HTML可以是这样的:
The time is: <script type="text/javascript">datum(uhr)</script>
时间为:基准(uhr)
您应该将代码从_Layout.cshtml移动到单独的.js文件中,并添加对该文件的引用
此外,还应将index.cshtml代码更改为:
@section SideBar {
<p>
<ul>
<li><a href="Index.cshtml">Add Job</a></li>
<li><a href="About.cshtml">About</a></li>
</ul>
</p>
<p>
The time is: <span id="uhr"></span>
</p>
<script type="text/javascript">datum("uhr");</script>
}
@节侧栏{
时间是:
基准(“uhr”);
}
我应该将.js文件放在哪个文件夹中?脚本与其他javascript文件一起将最有意义。我将新的.js文件放在脚本文件夹中,它就可以工作了。但是第二个跑得比真正的第二个快。如何控制?在我的js提琴示例中,它似乎是正确的。我不知道你怎么了。我想第二次不知怎么算了两次。在jsfiddle on html部分中,没有对datum(“uhr”)的调用,而在index.cshtml的代码段中,有对它的调用。在js中,也有一个称为数据(“uhr”)。我猜对了吗?
@section SideBar {
<p>
<ul>
<li><a href="Index.cshtml">Add Job</a></li>
<li><a href="About.cshtml">About</a></li>
</ul>
</p>
<p>
The time is: <span id="uhr"></span>
</p>
<script type="text/javascript">datum("uhr");</script>
}