0

mvc4アプリケーションで登録フォームを作成したいと思います。したがって、ユーザーが登録するときに、その時点でユーザーのステータス(プログラマーかどうか)を定義し、ユーザーの選択に応じて入力する追加のフィールドを動的に表示(または非表示)したいと思います。

デフォルトの場合、ユーザーがプログラマーでない場合(チェックボックスフィールドのチェックを外すことにより)、すべてのフィールドは言語、サイト、および保護観察のフィールドを非表示にするように見えます。私のレジスターモデルは次のようなものです。

public class RegisterModel
    {
        [Required]
        [Display(Name = "User name")]
        public string UserName { get; set; }

        [Required]
        [StringLength(100, ErrorMessage = "*", MinimumLength = 6)]
        [DataType(DataType.Password)]
        [Display(Name = "Password")]
        public string Password { get; set; }

        [DataType(DataType.Password)]
        [Display(Name = "Confirm password")]
        [Compare("Password", ErrorMessage = "*")]
        public string ConfirmPassword { get; set; }

        [Display(Name = "Profession")]
        public bool IsProgrammer { get; set; }

        [Required]
        [Display(Name = "Language")]
        public string Language { get; set; }

        [Required]
        [Display(Name = "Site")]
        public string Site { get; set; }

        [Required]
        [Display(Name = "Probation")]
        public string Probation { get; set; }            
    }

ユーザーがプログラマーの場合、言語、サイト、保護観察の各フィールドが必要です。ユーザーはそれらに入力する必要があります。

ユーザーがプログラマーでない場合、言語、サイト、保護観察の各フィールドは不要で、登録できる登録モデルを作成するにはどうすればよいですか?

私の2番目の質問は、チェックボックスがオン(オフ)の場合、フィールドを動的に表示(非表示)する方法です。

4

1 に答える 1

2

'mvc asp.net条件付き必須フィールド'をすばやく検索すると、次のいくつかのリンクが表示されます。

条件付きデータ注釈

IValidatableObjectの使用

柔軟な条件付きデータ注釈

これらは、サーバー側の検証を対象としています。

だからあなたの質問に答えるために:

  1. リンクをチェックしてください、それらは役に立ちます
  2. jQueryを使用してそれを実現できます。jQueryの表示と表示の詳細をご覧ください。
于 2012-11-28T13:54:21.370 に答える