使用Angular JS和asp.net进行动态调查

时间:2016-08-23 02:05:53

标签: angularjs angular

我正在尝试构建类似于调查猴子的应用程序。我打算使用AngularJS和Asp.net MVC。我在数据库中有SurveyQuestion表,其中包含有关问题文本和控件类型的信息。如果我们在SurveyQuestion表中有两行表明调查页面上会有两个Textbox问题,那么我们现在就说。我想从数据库加载问题文本,并根据问题类型在UI中显示适当的HTML控件(在这种情况下,它将只是两个文本框)使用angular。我为文本框创建了角度控制器,并在两个文本框中使用了ng-model I填充值,但如果我在一个文本框中更改值,则会在另一个文本框中更改值,我认为这是ng-model的目的。你能告诉我如何处理这个问题。当使用文本框中的点击时,我还需要保存文本框到数据库的响应,即在ng-blur事件中我希望保存对数据库的响应。

1 个答案:

答案 0 :(得分:0)

将指令设置为指向MVC操作,该操作返回与正确模型相关的视图。

类似/ forms / vendor

让它构建html模型,在MVC中看起来应该是这样的

public class FormController : Controller
{
    public ActionResult Vendor()
    {
        return View(new Vendor());
    }
}

视图将返回一个像这样简单的东西

@model Agile.Core.Models.Vendor


@Html.EditorForModel()

然后连接EditorTemplate cshtml文件,为你提供想要以角度呈现的值

String.cshtml

@using Agile.Utilities.Extensions
<input type="text"
       class="form-control"
       required="@ViewData.ModelMetadata.IsRequired"
       ng-model="@ViewData.GetModelName()"
       id="@ViewData.TemplateInfo.GetFullHtmlFieldId("").ToCamelCase()"
       name="@ViewData.TemplateInfo.GetFullHtmlFieldName("").ToCamelCase()">

这是我将使用的一般方法