0
我正在使用AngularJS,我正在尝试将角度值传递给Controller。这就是我的AngularJS脚本文件看起来像:如何将AngluarJS的值传递给MVC控制器
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope) {
{
function startTime() {
var today = new Date();
var h = today.getHours();
var m = today.getMinutes();
var s = today.getSeconds();
// add a zero in front of numbers<10
m = checkTime(m);
s = checkTime(s);
return (h + ":" + m + ":" + s);
t = setTimeout('startTime()', 500);
}
$scope.name = startTime();
}
});
</script>
所以从这一点我可以通过调用$ scope.name得到的时间。但我想将该变量传递给控制器。我想这样做的方式是将它作为参数传递给Html.BeginForm,但这不起作用。这是我的BeginForm:
<div ng-app="myApp" ng-controller="myCtrl">
@using (Html.BeginForm("Bob", "Home", new { Time = ng-model="name" },
FormMethod.Post, null))
{
<p>Name:</p> <input style="color:black;" ng-model="name">
<h1 style="color:black;">You entered: {{name}}</h1>
<button type="submit" style="color:black;">Submit</button>
}
</div>
现在我有输入框那里只是这样我就可以确保它传递正确的价值,它是。但在BeginForm中,它不允许Time等于从AngularJS传递的值。我将如何能够将该值传递给控制器?
我欣赏的答案,但我试图做到的是通过NG-值的值回控制器无需输入框。我喜欢你做隐藏领域的想法,但我试图找出如何做到这一点(将ViewBag设置为ng值...但是如何,或者以其他方式)。 – kpschwert